XML Αναλυτής

Όλοι οι κύριοι περιηγητές έχουν ενσωματωμένο解析τήρα XML, ο οποίος χρησιμοποιείται για την πρόσβαση και την επεξεργασία XML.

Ο αναλυτής μετατρέπει το XML σε αντικείμενο XML DOM - αντικείμενα που μπορούν να χειριστούν με JavaScript.

XML Αναλυτής

XML DOM (Document Object Model)Ορίζονται ιδιότητες και μεθόδοι για την πρόσβαση και την επεξεργασία XML.

Ωστόσο, πριν από την πρόσβαση στο αρχείο XML, πρέπει να το φορτώσετε σε αντικείμενο XML DOM.

Όλες οι σύγχρονες πλοηγητές παρέχουν ενσωματωμένο αναλυτή XML που μπορεί να μετατρέψει κείμενο σε αντικείμενο XML DOM.

Ανάλυση συμβολοσειράς κειμένου

Αυτό το παράδειγμα θα αναλύσει τη συμβολοσειρά κειμένου σε αντικείμενο XML DOM και θα χρησιμοποιήσει το JavaScript για να εξάγει πληροφορίες από αυτό:

παράδειγμα

<html>
<body>
<p id="demo"></p>
<script>
var text, parser, xmlDoc;
text = "<bookstore><book>" +
"<title>雅舍谈吃</title>" +
"<author>梁实秋</author>" +
"<year>2013</year>" +
"</book></bookstore>";
parser = new DOMParser();
xmlDoc = parser.parseFromString(text,"text/xml");
document.getElementById("demo").innerHTML =
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
</script>
</body>
</html>

Δοκιμάστε το προσωπικά

πρότυπος επεξηγήσεις

Ορισμός συμβολοσειράς κειμένου:

text = "<bookstore><book>" +
"<title>雅舍谈吃</title>" +
"<author>梁实秋</author>" +
"<year>2013</year>" +
"</book></bookstore>";

Δημιουργία αντικειμένου αναλυτή XML DOM

parser = new DOMParser();

Ο αναλυτής χρησιμοποιεί αυτή τη συμβολοσειρά κειμένου για να δημιουργήσει ένα νέο αντικείμενο XML DOM:

xmlDoc = parser.parseFromString(text,"text/xml");

αντικείμενο XMLHttpRequest

αντικείμενο XMLHttpRequestπαρέχει ενσωματωμένο ανάλυση XML.

responseText ιδιότητες για να επιστρέψετε την απάντηση ως字符串.

responseXML ιδιότητες για να επιστρέψετε την απάντηση ως αντικείμενο XML DOM.

Αν θέλετε να χρησιμοποιήσετε την απάντηση ως αντικείμενο XML DOM, μπορείτε να χρησιμοποιήσετε responseXML ιδιότητες.

παράδειγμα

αίτημα αρχείου cd_catalog.xmlκαι θα χρησιμοποιήσει την απάντηση ως αντικείμενο XML DOM:

xmlDoc = xmlhttp.responseXML;
txt = "";
x = xmlDoc.getElementsByTagName("ARTIST");
for (i = 0; i < x.length; i++) {
    txt += x[i].childNodes[0].nodeValue + "<br>";
}
document.getElementById("demo").innerHTML = txt;

Δοκιμάστε το προσωπικά