Ultimele tutoriale de dezvoltare web
 

XML DOM obține valori nod


Proprietatea nodeValue este utilizat pentru a obține valoarea de text a unui nod.

getAttribute() metoda returneaza valoarea unui atribut.

×

Antet


Ia valoarea unui Element

In DOM, totul este un nod. nodurile Element nu au o valoare de tip text.

Valoarea de text a unui nod element este stocat într-un nod copil. Acest nod se numește un nod de text.

Pentru a prelua valoarea de text a unui element, trebuie să preluați valoarea nodului textului elementelor.


Metoda getElementsByTagName

getElementsByTagName() Metoda returnează o listă a tuturor elementelor nod, cu numele tag - ul specificat, în aceeași ordine în care apar în documentul sursă.

Să presupunem că „ books.xml “ a fost încărcat în xmlDoc.

Acest cod preia primul <title> elementului:

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

ChildNodes Proprietatea

Proprietatea childNodes returnează o listă de noduri copil unui element.

Codul de mai jos preia nodul text al primului <title> elementului:

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

NodeValue Proprietatea

Proprietatea nodeValue returnează valoarea textului unui nod text.

Codul de mai jos preia valoarea text a nodului text al primului <title> elementului:

Exemplu

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

Resul în z: "Everyday Italian" de "Everyday Italian" cu "Everyday Italian"


Exemplu complet

Exemplu

<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
    if (xhttp.readyState == 4 && xhttp.status == 200) {
        myFunction(xhttp);
    }
};
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>
Încearcă - l singur »

Bucla prin toate <title> elemente: Încearcă - te


Ia valoarea unui atribut

În DOM, atributele sunt noduri. Spre deosebire de nodurile elementelor, nodurile de atribut au valori text.

Modul de a obține valoarea unui atribut, este de a obține valoarea de text.

Acest lucru se poate face cu ajutorul getAttribute() metoda sau folosind proprietatea nodeValue nodului atribut.


Ia - o valoare de atribut - getAttribute()

getAttribute() metoda returneaza o attribute's value .

Codul de mai jos preia valoarea de text a "lang" atributul primului <title> elementului:

Exemplu

x = xmlDoc.getElementsByTagName("title")[0];
txt = x.getAttribute("lang");
Încearcă - l singur »

Rezultat în txt: "en"

Bucla prin toate <book> elemente și pentru a obține lor de "category" atribute: Încercați -


Ia - o valoare de atribut - getAttributeNode()

getAttributeNode() metoda returneaza un attribute node .

Codul de mai jos preia valoarea de text a "lang" atributul primului <title> elementului:

Exemplu

x = xmlDoc.getElementsByTagName("title")[0];
y = x.getAttributeNode("lang");
txt = y.nodeValue;
Încearcă - l singur »

Rezultat txt = "en"

Bucla prin toate <book> elemente și pentru a obține lor de "category" atribute: Încearcă - te