La proprietà nodeValue viene utilizzato per ottenere il valore del testo di un nodo.
Il getAttribute() metodo restituisce il valore di un attributo.
Prendi il valore di un elemento
Nel DOM, tutto è un nodo. nodi elemento non hanno un valore di testo.
Il valore di testo di un nodo elemento è memorizzato in un nodo figlio. Questo nodo è detto nodo di testo.
Per recuperare il valore di testo di un elemento, è necessario recuperare il valore di nodo di testo degli elementi.
Il metodo getElementsByTagName
Il getElementsByTagName() metodo restituisce un elenco dei nodi di tutti gli elementi, con il nome del tag specificato, nello stesso ordine in cui appaiono nel documento di origine.
Supponiamo " books.xml " è stato caricato in xmlDoc.
Questo codice recupera il primo <title> elemento:
var x = xmlDoc.getElementsByTagName("title")[0];
Il ChildNodes Proprietà
La proprietà childNodes restituisce una lista di nodi figli di un elemento.
Il codice seguente recupera il nodo di testo del primo <title> elemento:
x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
Il nodeValue Proprietà
La proprietà nodeValue restituisce il valore di testo di un nodo di testo.
Il codice seguente recupera il valore del testo del nodo testo del primo <title> elemento:
Esempio
x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
z = y.nodeValue;
Resul in z: "Everyday Italian"
Esempio Complete
Esempio
<!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>
Prova tu stesso " Loop attraverso tutti <title> elementi: provate voi stessi
Prendi il valore di un attributo
Nel DOM, attributi sono nodi. A differenza di nodi elemento, nodi di attributo hanno valori di testo.
Il modo per ottenere il valore di un attributo, è quello di ottenere il suo valore di testo.
Questo può essere fatto utilizzando la getAttribute() metodo o utilizzando la proprietà nodeValue del nodo attributo.
Ottenere un valore di attributo - getAttribute()
Il getAttribute() restituisce un attribute's value .
Il codice seguente recupera il valore del testo della "lang" attributo del primo <title> elemento:
Risultato in txt: "en"
Loop attraverso tutti <book> elementi e ottenere il loro "category" attributi: Provate voi stessi
Ottenere un valore di attributo - getAttributeNode()
Il getAttributeNode() restituisce un attribute node .
Il codice seguente recupera il valore del testo della "lang" attributo del primo <title> elemento:
Esempio
x = xmlDoc.getElementsByTagName("title")[0];
y = x.getAttributeNode("lang");
txt = y.nodeValue;
Prova tu stesso " Risultato in txt = "en"
Loop attraverso tutti <book> elementi e ottenere il loro "category" attributi: provate voi stessi