• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Bildwechsel wenn Variable anderen Wert hat

WEBI

Neues Mitglied
Hallo,

ich habe folgendes Problem:

Ich möchte mit Javascript einen Bildwechsel hervorrufen, wenn sich der Wert einer Variablen ändert.

z.B. wenn die Variable den boolschen Wert Hund == 1 hat, dann soll das Bild hund.jpg anzeigen und wenn die Variable den Wert 0 hat, dann soll das Bild Katze.jpg dargestellt werden.
Das Problem ist auch noch, dass eine Variable bei mir so aussieht: :="Daten_DB".Temperatur:
Ist eine Siemens S7 Webserver Lösung und deshalb weiß ich auch nicht genau, wie ich das ganze lösen soll..???

folgenden Code hätte ich jetzt mal geschnitzt, jetzt halt noch mit Texten, später soll der angezeigte Text mal durch Bilder eben ersetzt werden, aber so klappts bis jetzt noch nicht:

<!--Code Anfang-->
<html>
<head>
<meta http-equiv="refresh" content="3">
</head>
<body>
<script type="text/javascript">
var temperatur = confirm(:="Daten_DB".Temperatur:);

if (temperatur == true)
{
alert("Eingeschalten wegen Übertemperatur");
}
else
{
alert("Ausgeschalten");
}
</script>
</body>
</html>
<!--Code Ende-->


Vielen Dank schon mal ;-)

Gruß
 
Werbung:
Vorab: Warum benutzt du nicht die Möglichkeit im Forum Quellcode formatiert darzustellen?

Das Problem ist auch noch, dass eine Variable bei mir so aussieht: :="Daten_DB".Temperatur:
Ist eine Siemens S7 Webserver Lösung und deshalb weiß ich auch nicht genau, wie ich das ganze lösen soll..???

folgenden Code hätte ich jetzt mal geschnitzt, jetzt halt noch mit Texten, später soll der angezeigte Text mal durch Bilder eben ersetzt werden, aber so klappts bis jetzt noch nicht:
Klappt nicht, heißt?
Wie lautet die Fehlermeldung? Weißt du wo du die Fehlermeldungen in deinem Browser findest? Was hast du dagegen getan?
 
Vorab: Warum benutzt du nicht die Möglichkeit im Forum Quellcode formatiert darzustellen?

--> sorry, wusste nicht wie das geht ;-)

Es wird keine Fehlermeldung angezeigt, nur schaut das Ergebnis bis jetzt so aus: (siehe Bilder)

1. Bild http://s3.imgimg.de/uploads/bild18181de7ajpg.jpg
2. Bild =http://s3.imgimg.de/uploads/bild2c805254fjpg.jpg

Das Problem ist jetzt, dass ich nicht so ein Auswahlfenster haben möchte, sondern es soll lediglich wenn die Variable den Wert 1 hat, z.B. Hund.jpg und wenn die Variable den Wert 0 hat, Katze.jpg angezeigt werden. Mehr brauch ich gar ned ;-)

Gruß und Danke für die Antwort ;-)
 
Werbung:
Bei mir wird aber keiner angezeigt, wenn du jedoch sagst, es befindet sich einer, dann sag mir doch bitte wo und außerdem auch, wo ich ich das im Browser finde (Firefox 4.0.1)..??? Danke
 
Werbung:
Ah ok, Danke struppi.. ;-)

das Problem ist nur, dass die Variable > :="Daten_DB".Temperatur: < unbedingt so heißen muss, da sie sonst vom Websserver seitens Siemens nicht gelesen werden kann.

Wie mach ich den die Ausgabe, dass kein Text sondern ein Bild erscheint?
 
das Problem ist nur, dass die Variable > :="Daten_DB".Temperatur: < unbedingt so heißen muss, da sie sonst vom Websserver seitens Siemens nicht gelesen werden kann.
Der Webserver kann keine JS Variabel lesen. Irgendwas stimmt mit der Logik deines Programms nicht oder dir ist nicht klar, dass JS im Browser abläuft und nichts von einem Server weiß und umgekehrt.
 
Vielleicht wird der Code in der geposteten Form erstmal serverseitig durchlaufen, und der Webserver ersetzt :="Daten_DB".Temperatur: durch irgendeinen Wert, bevor der Inhalt als HTML an den Client geschickt wird. In etwa so, wie man JS-Variablen auch serverseitig vor dem Ausliefern des Codes per PHP setzen kann:

Code:
var s = '<?php echo $s; ?>';

@WEBI: Ist das so? Oder steht noch :="Daten_DB".Temperatur: im Quellcode, wenn du dir den im Browser anzeigen lässt?
 
Werbung:
@mermshaus: genau so ist es, im Quelltext wird dann nämlich lediglich der Wert z.B. 40 angezeigt.
Hast du dann eine Lösung, wie ich abhängig vom Wert der Variablen, einmal das Bild und einmal ein anderes Bild anzeigen lassen kann...??? z.B. bei 1 = Hund.jpg, bei 0 = Katze.jpg..???
 
@mermshaus: genau so ist es, im Quelltext wird dann nämlich lediglich der Wert z.B. 40 angezeigt.
Dann musst du uns das auch zeigen, für dein JS Frage ist der code auf dem Server unrelevant und hilft uns nicht weiter. Zeig uns Bitte den Code, den der Browser sieht, dann können wir dir auch helfen.
 
Code:
<html>
<head>
</head>
<body>
<script type="text/javascript">
var kompr = confirm(1);

if (kompr == true)
   {
   alert("Eingeschalten");
   }
else
   {
   alert("Ausgeschalten");
   }
</script>
</body>
</html>

so schaut der Code im Browser aus ;-)
 
Werbung:
Das ist ja unter anderem das Problem.
Ich weiß nicht, wie ich das realisieren soll...???

Text ist klar, aber wie ich statt einen Text ein Bild angezeigt bekomme, weiß ich nicht :-(
 
Wie Du ein Bild darstellst hängt davon ab wie Du es innerhalb des Designs darstellen willst. Ein Fenster wie mit dem Alter in deinem jetzigen Code ist auf jeden Fall nicht möglich. Man könnte es allerdings als Flyout einblenden, als Hintergrundbild eines anderen Elements oder als eigenes Bild-Element.
 
Werbung:
versteh schon, ich möchte lediglich das Bild als Bild-Element haben. Also wirklich nur wie z.B. der Antowort Button hier im Forum. Hierbei sollte es sich eben um zwei verschiedene Bilder handeln, die abhängig vom Variablenzustand her, eingeblendet werden.
 
Der Antwort-Button hier ist ein input-Button mit Hintergrundbild. Das wäre per JavaScript ebenso machbar wie die Einbindung eines einfachen img-Tags. Auch dabei hast Du 2 Möglichkeiten: entweder per innerHTML (siehe SELFHTML: JavaScript / Objektreferenz / all) oder document.write() die Ausgabe schreiben oder das nötige Element per DOM zusammenbauen (siehe SELFHTML: JavaScript / Objektreferenz / document). Letzteres ist der sicherere Weg, wenn auch etwas komplexer.
 
ok, also ich hab mir jetzt da mal was ausgedacht und jetzt wollt ich fragen, wo der fehler liegt? den er zeigt immer noch dieses Alert-Fenster an obwohl dieses im Code gar nicht mehr vorhanden ist.

Ich hoffe dadurch lässt sich erkennen, was ich eigentlich vor hab:

Code:
<html>
<head>
<meta http-equiv="refresh" content="3">
</head>
<body>
<script type="text/javascript">
var klima = confirm(:="Daten_DB".Status_Klima:);

if (klima == true)
   {
   document.write('<img src="http://172.20.18.206/awp/Klima_EIN_STATUS.jpg">');
   }
else
   {
   document.write('<img src="http://172.20.18.206/awp/Klima_AUS_STATUS.jpg">');
   }
</script>
</body>
</html>

danke schon mal für die Hilfe ;-)
 
Werbung:
Hab jetzt die Lösung:

Code:
<html>
<head>
<meta http-equiv="refresh" content="3">
</head>
<body>
<script type="text/javascript">
var klima = (:="Daten_DB".Status_Klima:);

if (klima == true)
   {
   document.write('<img src="http://172.20.18.206/awp/Klima_EIN_STATUS.jpg">');
   }
else
   {
   document.write('<img src="http://172.20.18.206/awp/Klima_AUS_STATUS.jpg">');
   }
</script>
</body>
</html>

Danke für eure Hilfe ;-)
 
und wie gesagt, für ein JS Problem ist der Code auf dem Server unrelevant.
 
Zurück
Oben