XML DOM Αποκτήστε την τιμή του κόμβου

nodeValue Η ιδιότητα χρησιμοποιείται για να πάρει την τιμή του κειμένου του κόμβου.

getAttribute() Η μεθοδος επιστρέφει την τιμή της ιδιότητας.

Αποκτήστε την τιμή του στοιχείου

Στο DOM, όλα είναι κόμβοι. Οι κόμβοι στοιχείων δεν έχουν τιμή κειμένου.

Η τιμή του κόμβου του στοιχείου αποθηκεύεται στους υποκόμβους. Ο κόμβος αυτός ονομάζεται κόμβος κειμένου.

Για να πάρουμε την τιμή του κειμένου του στοιχείου, πρέπει να αναζητήσουμε την τιμή του κειμένου του κόμβου του στοιχείου.

Αυτό σημαίνει ότι η μέθοδος για να πάρουμε το κείμενο του στοιχείου είναι να πάρουμε την τιμή του υποκομμάτου (κείμενο κόμβου).

Η μεθοδος getElementsByTagName

getElementsByTagName() Η μεθοδος επιστρέφει μια λίστα που περιέχει τα στοιχεία με το καθορισμένο όνομα ετικέταςΛίστα των κόμβων όλων των στοιχείων,η σειρά των στοιχείων είναι η σειρά που εμφανίζονται στον αρχείο πηγής.

Υποθέτουμε books.xml Εγκαταστάθηκε στο xmlDoc.

Αυτός ο κώδικας αναζητά το πρώτο στοιχείο <title>:

var x = xmlDoc.getElementsByTagName("title")[0];

Η ιδιότητα ChildNodes

childNodes Η ιδιότητα επιστρέφειΛίστα των υποκομμάτων του στοιχείου

Η παρακάτω κώδικας αναζητά τον κόμβο του κειμένου του πρώτου στοιχείου <title>:

x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];

Η ιδιότητα nodeValue

nodeValue Η ιδιότητα επιστρέφειΤα αποτελέσματα του κειμένου του κόμβου

Η παρακάτω κώδικας αναζητά τον κείμενο του πρώτου στοιχείου <title> της διαδρομής του κειμένου:

Παράδειγμα

x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
z = y.nodeValue;

Τα αποτελέσματα στο z: Συζητήσεις για το φαγητό

Πλήρης παράδειγμα

Παράδειγμα 1

<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {}}
    if (this.readyState == 4 && this.status == 200) {
        myFunction(this);
    }
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
    var xmlDoc = xml.responseXML;
    var x = xmlDoc.getElementsByTagName('title')[0];
    var y = x.childNodes[0];
    document.getElementById("demo").innerHTML = y.nodeValue;
}
</script>
</body>
</html>

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

Παράδειγμα 2

Κύκλικη διατύπωση όλων των στοιχείων <title>:

x = xmlDoc.getElementsByTagName('title');
for (i = 0; i < x.length; i++) { 
    txt += x[i].childNodes[0].nodeValue + "<br>";
}

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

Αποκτήστε την τιμή της ιδιότητας

Στο DOM, οι ιδιότητες είναι επίσης κόμβοι. Αν διαφέρουν από τους κόμβους στοιχείων, οι ομάδες ιδιοτήτων έχουν τεκμηριωμένη τιμή.

Η μέθοδος για την απόκτηση της τιμής της ιδιότητας είναι η απόκτηση της τεκμηριωμένης τιμής.

Μπορείτε να το αποκτήσετε χρησιμοποιώντας getAttribute() Μέθοδος ή ομάδα ιδιοτήτων nodeValue Για να εκτελέσετε αυτήν την εργασία, χρησιμοποιήστε την ιδιότητα.

Αποκτήστε την τιμή της ιδιότητας - getAttribute()

getAttribute() Η μέθοδος επιστρέφειΤιμή της ιδιότητας

Το παρακάτω κώδικας αναζητά την πρώτη ιδιότητα <title> στοιχείου: "lang" Τекстουμή της ιδιότητας:

Παράδειγμα 1

x = xmlDoc.getElementsByTagName("title")[0];
txt = x.getAttribute("lang");

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

Παράδειγμα 2

Κύκλικη διατύπωση όλων των στοιχείων <book> και απόκτηση της ιδιότητάς τους "category":

x = xmlDoc.getElementsByTagName("book");
for (i = 0; i < x.length; i++) { 
    txt += x[i].getAttribute("category") + "<br>";
}

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

Αποκτήστε την τιμή της ιδιότητας - getAttributeNode()

getAttributeNode() Η μέθοδος επιστρέφειΟμάδα ιδιοτήτων

Το παρακάτω κώδικας αναζητά την πρώτη ιδιότητα <title> στοιχείου: "lang" Τекстουμή της ιδιότητας:

Παράδειγμα 1

x = xmlDoc.getElementsByTagName("title")[0];
y = x.getAttributeNode("lang");
txt = y.nodeValue;

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

Παράδειγμα 2

Κύκλικη διατύπωση όλων των στοιχείων <book> και απόκτηση της ιδιότητάς τους "category":

x = xmlDoc.getElementsByTagName("book");
for (i = 0; i < x.length; i++) {
    txt += x[i].getAttributeNode("category").nodeValue + "<br>";
}

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