Recupero del Valore dei Node XML DOM
- Pagina precedente Posizionamento nodo DOM
- Pagina successiva Modifica nodo DOM
L'attributo nodeValue viene utilizzato per ottenere il valore di testo del nodo.
Il metodo getAttribute() restituisce il valore dell'attributo.
Esempio
Esempio di utilizzo di file XML books.xml.
Funzione loadXMLDoc(),posizionata all'esterno del JavaScript, utilizzata per caricare file XML.
- Ottenere il valore dell'elemento
- In questo esempio, getElementsByTagname() viene utilizzato per ottenere l'elemento <title> primo in "books.xml".
- Ottenere il valore dell'attributo
- In questo esempio, il metodo getAttribute() viene utilizzato per ottenere il valore dell'attributo "lang" dell'elemento <title> primo in "books.xml".
Ottenere il valore dell'elemento
Nel DOM, ogni componente è un nodo. Gli elementi non hanno valore di testo.
Il testo del nodo elemento è memorizzato nei nodi figli. Questo nodo è chiamato nodo testo.
Il metodo per ottenere il testo dell'elemento è ottenere il valore di questo nodo figlio (nodo testo).
Ottenere il valore dell'elemento
Il metodo getElementsByTagName() restituisce una lista di nodi che contengono tutti gli elementi con il nome di tag specificato, nell'ordine in cui compaiono nel documento sorgente.
Il seguente codice utilizza loadXMLDoc() Imposta "books.xml" Carica xmlDoc e ricerca l'elemento <title> primo:
xmlDoc=loadXMLDoc("books.xml"); x = xmlDoc.getElementsByTagName("title")[0];
L'attributo childNodes restituisce una lista di nodi figli. L'elemento <title> ha un solo nodo figlio, ovvero un nodo testo.
Il seguente codice ricerca il nodo testo dell'elemento <title>:
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0];
L'attributo nodeValue restituisce il valore del testo del nodo testo:
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0]; txt = y.nodeValue;
Risultato: txt = "Harry Potter"
Eseguire la scansione di tutti gli elementi <title>:TIY
Ottenere il valore dell'attributo
Nel DOM, gli attributi sono anche nodi. A differenza dei nodi elemento, i nodi attributo hanno un valore di testo.
Il metodo per ottenere il valore dell'attributo è ottenere il suo valore di testo.
Questa operazione può essere completata utilizzando il metodo getAttribute() o l'attributo nodeValue del nodo.
Ottenere il valore dell'attributo - getAttribute()
Il metodo getAttribute() restituisce il valore dell'attributo.
Il seguente codice ricerca il valore del testo dell'attributo "lang" dell'elemento <title> primo:
xmlDoc=loadXMLDoc("books.xml"); txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");
Risultato: txt = "en"
Esempio di spiegazione:
- Utilizzando loadXMLDoc() Imposta "books.xmlCarica in xmlDoc
- Imposta il valore dell'attributo "lang" del primo nodo <title> alla variabile txt
Esegui l'iterazione su tutti gli elementi <book> e ottieni il loro attributo "category":TIY
Ottieni il valore dell'attributo - getAttributeNode()
Il metodo getAttributeNode() restituisce un nodo attributo.
Il codice seguente ricerca il valore testuale dell'attributo "lang" del primo elemento <title>:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].getAttributeNode("lang"); txt=x.nodeValue;
Risultato: txt = "en"
Esempio di spiegazione:
- Utilizzando loadXMLDoc() Imposta "books.xmlCarica in xmlDoc
- Ottieni l'attributo "lang" del primo nodo <title>
- Imposta il valore dell'attributo alla variabile txt
Esempio: Itera tutti gli elementi <book> e ottieni il loro attributo "category":TIY
- Pagina precedente Posizionamento nodo DOM
- Pagina successiva Modifica nodo DOM