SSI Variablen über JavaScript aktualisieren
s3b979
- javascript
Ich Versuche gerade mit meinem Webserver SSI Variable kontinuierlich Auszulesen!
Nur leider wird sie immer nur einmal Ausgelesen!
Könnt ihr mir Helfen?
Hier ist der Sourcecode?
<!DOCTYPE HTML>
<HTML>
<HEAD>
</HEAD>
<TITLE>ANYBUS ETHERNET/IP</TITLE>
<script language=JavaScript type="text/javascript">
function myFunction()
{
setInterval("neuladen()", 300)
}
function neuladen()
{
var flVnenn=<?--#exec cmd_argument='printf( "%5.0f",ABCCMessage(254,258,1,5,0,0,NONE,FLOAT) )'-->;
document.getElementById("Vnenn").value=flVnenn;
}
</script>
<noscript><P class="alert">Please enable JavaScript for full functionality.</P></noscript>
</HEAD>
<body onload="myFunction()" style="height: 120px; color: rgb(0, 0, 0); background-color: rgb(100, 132, 173); direction: ltr;" alink="#ffffff" link="#ffffff" vlink="#ffffff">
<FORM action="test.shtm">
<table style="text-align: left; height: 103px; width: 204px;" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td style="height: 15px; width: 120px;"><span class="Stil3">Nominal voltage:</span></td>
<td style="text-align: right; width: 60px;"><span class="Stil3"><input style="text-align: center;height: 15px;" name="Vnenn" id="Vnenn" size="8" readonly="readonly"></span></td>
<td style="text-align: center; width: 20px;"><span class="Stil3">V</span></td>
</tr>
</tbody>
</table>
</FORM>
</BODY>
</HTML>
Hallo s3b979,
SSI läuft auf dem Server, bevor die Seite zum Browser ausgeliefert wird; Javascript läuft auf dem Klienten, nachdem die Seite ausgeliefert wurde.
Gruß, Jürgen
Hi Jürgen,
heisst das ich kann nicht als Klient den Server eine ständige Anfrage über eine SSI Variable schicken?
Und wenn doch, wie mache ich das am besten?
MFG
s3b979
Hi,
du kannst Ajax oder WebSockets benutzen. Oder eine Technik die ich nur als "JSON-P" kenne, ist aber nur bei Cross-Origin sinnvoll.
~dave
Hallo s3b979,
du kannst per http-Request (AJAX) beliebige Textdateien anfordern. Wenn diese SSI-Anweisungen enthalten, werden diese vor der Auslieferung vom Server an den Clienten ausgeführt. Du musst dann "nur noch" die gewünschten Informationen aus dem http-Request herausholen.
Ich weiß jetzt nicht, ob SSI-Anweisungen auch ausgeführt werden, wenn sie in keiner html-Konformen Datei stecken, sondern z.B. nur die Anweisung enthalten. Dann wäre die Extraktion sehr einfach. (XXX.innerHTML = http_request.responseText;)
Du müsstest jetzt prüfen, wie eine Datei, die nur eine SSI-Anweisung enthält, im Browser ankommt. Wenn das wie gewünscht funktioniert, musst du dich mit http-Requests (AJAX) vertraut machen, z.B. auf dieser Seite.
Gruß, Jürgen
Ich Versuche gerade mit meinem Webserver SSI Variable kontinuierlich Auszulesen!
Wie der name schon sagt, dieser Code wird auf dem Server ausgewertet, im Client kommt dann dieser Code als Initialwert der Javascriptvariablen an!
Um diesen Wert jedesmal neu vom Server zu holen, musst du einen Request starten. Mit dem http://www.w3schools.com/xml/xml_http.asp zum Beispiel!
Kann man diese Request nicht für SSI Befehle erstellen?
Wenn ja hast du es schonmal gemacht?