Wert aus HTML Tag lesen
CJAY
- javascript
Hallo Liebes Forum ;D,
ich habe mir eine Festo Steuerung zugelegt die auch Websiten hosten kann.
Es gibt verschiedene Steuerungs und Lesebefehle von aus und Eingängen.
einer davon ist z.b <FSTCI DAW8> der den Ausgangswert von 8 liest.
Dieser Tag wird aber nur beim start der Site geladen und wandelt sich in eine Zahl um.
Mein Problem ist es in eine geladenen Seite den wert durch klick eines Buttons auszulesen.
Ich hab alles versucht was ich wusste bin aber nicht weitergekommen.
Ich denke es würde mit Ajax funktionieren, aber damit kenne ich mich noch nicht aus.
Ich hoffe ihr könnt mir helfen wäre das größte ;D.
LG vom CJAY ;D
Hallo CJAY,
Ich denke es würde mit Ajax funktionieren,
denke ich auch.
aber damit kenne ich mich noch nicht aus.
Ich hoffe ihr könnt mir helfen wäre das größte ;D.
hast du die hier verlinkte Seite schon gelesen?
Gruß, Jürgen
SO ich habe hier mein Script, doch es unterstützt nur text und kein HTML Code
Ich weiß zu 100% das es an dieser Zeile liegt:
var root_node = xmldoc.getElementsByTagName('root').item(0);
document.getElementById('daten').innerHTML(root_node.firstChild.data);
denn diese kann nur Text wiedergeben und kein HTML oder???
ich hebe es versucht mit
var root_node = xmldoc.getElementsByTagName('root').innerHTML;
document.getElementById('daten').innerHTML(root_node.firstChild);
ging aber nicht D;
Kann jemand mir helfen :D?
hier als Anhang nochmal das ganze Script:
<html>
<head>
<script type="text/javascript" language="javascript">
var http_request = false;
function macheRequest(url) {
http_request = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');
// zu dieser Zeile siehe weiter unten
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
return false;
}
http_request.onreadystatechange = alertInhalt;
http_request.open('GET', url, true);
http_request.send(null);
}
function alertInhalt() {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
var xmldoc = http_request.responseXML;
var root_node = xmldoc.getElementsByTagName('root').item(0);
document.getElementById('daten').innerHTML(root_node.firstChild.data);
} else {
alert('Bei dem Request ist ein Problem aufgetreten.');
}
}
}
</script>
</head>
<body>
<span
style="cursor: pointer; text-decoration: underline; color: blue"
onclick="macheRequest('test.xml')">Einen Request absetzen
</span>
<p id="daten"></p>
</body>
</html>
test.xml :
<?xml version="1.0" ?>
<root>
<p>Test</p>
</root>
Hallo CJay,
test.xml :
<?xml version="1.0" ?>
<root>
<p>Test</p>
</root>
»»~~~javascript
var xmldoc = http_request.responseXML;
> var root_node = xmldoc.getElementsByTagName('root').item(0);
> document.getElementById('daten').innerHTML(root_node.firstChild.data);
ich rate mal: firstChild ist der Zeilenumbruch (Textknoten) vor <p>. Versuch mal
var root_node = xmldoc.getElementsByTagName('root')[0];
var p_node = root_node.getElementsByTagName('p')[0];
document.getElementById('daten').innerHTML(p_node.firstChild.data);
Das ist jetzt nicht getestet.
Gruß, Jürgen