Prüfen, ob XML-Daten geladen
JCB
- javascript
Hallo!
Mit <xml src="" id="xml" async="false"></xml> binde ich einen Webdienst ein. Die URL baue ich mit JS zusammen. Übergeben werden einige Parameter welche dann vom Webdienst in eine XML-Datei geschrieben werden. Funzt auch wunderbar. Ich will aber auch die meldungen abfragen können, die der dienst zurückmeldet. mein problem ist jetzt: wie kann ich prüfen, ob der dienst schon fertig ist bzw. schon daten/meldungen zurückgeschickt hat? ich könnte natürlich in ner schleife oder im intervall den status immer abfragen, aber das gefällt mir nicht so recht ;). vielleicht weiß ja jemand ne bessere lösung :).
Gruß, Jan
Hallo,
ich könnte natürlich in ner schleife oder im intervall den status immer abfragen, aber das gefällt mir nicht so recht ;).
Auf etwas in dieser Art wird es wohl hinauslaufen. Pruefe die readyState-Eigenschaft des XML-Objektes auf die Werte loading, loaded, interactive, complete.
Es gibt fuer die XML-Dateninseln den Event-Handler onreadystatechange. Probiere mal diesen Testcode:
...
<body>
<p id="ausgabe">Status: </p>
<xml src="abc.xml" id="xml" async="false" onreadystatechange="Info()"></xml>
</body>
...
JS-Funktion:
function Info()
{
var xmlobj,status,ausgabe;
ausgabe=document.getElementById("ausgabe");
xmlobj=document.getElementById("xml");
status=xmlobj.readyState;
ausgabe.firstChild.nodeValue+=status+" | ";
}
Ergebnis:
Status: loading | loaded | interactive | complete |
MfG, Thomas