Modifica del valore del nodo XML DOM

L'attributo nodeValue viene utilizzato per modificare il valore del nodo.

Il metodo setAttribute() viene utilizzato per modificare il valore dell'attributo.

Esempio

Esempio di utilizzo di file XML books.xml.

Funzione loadXMLDoc(), situato all'esterno del JavaScript, utilizzato per caricare file XML.

Modificare il nodo di testo dell'elemento
In questo esempio, l'attributo nodeValue viene utilizzato per modificare il nodo di testo del primo elemento <title> nel file "books.xml".
Modificare il valore dell'attributo utilizzando setAttribute
In questo esempio, il metodo setAttribute() viene utilizzato per modificare il valore dell'attributo "category" del primo <book>.
Modificare il valore dell'attributo utilizzando nodeValue
In questo esempio, l'attributo nodeValue viene utilizzato per modificare il valore dell'attributo "category" del primo <book>.

Modificare il valore dell'elemento

Nella DOM, ogni componente è un nodo. I nodi di elemento non hanno valore di testo.

Il testo del nodo di elemento è memorizzato nei sotto-nodi. Questo nodo è chiamato nodo di testo.

Il metodo per modificare il testo dell'elemento è modificare il valore di questo sotto-nodo (nodo di testo).

Modificare il valore del nodo di testo

L'attributo nodeValue può essere utilizzato per modificare il valore del nodo di testo.

Il seguente frammento di codice modifica il valore del nodo di testo del primo elemento <title>:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="Hello World";

Esempio di spiegazione:

  • Utilizzando loadXMLDoc() Cambia "books.xml"Carica xmlDoc"
  • Ottieni il nodo di testo del primo elemento <title>
  • Modificare il valore del nodo di testo di questo testo al valore "Hello World"

TIY

Eseguire la scansione e modificare tutti i nodi di testo degli elementi <title>:TIY

Modificare il valore dell'attributo

Nella DOM, gli attributi sono anche nodi. A differenza dei nodi di elemento, i nodi di attributo hanno un valore di testo.

Il metodo per modificare il valore dell'attributo è modificare il suo valore di testo.

Questa operazione può essere compiuta utilizzando il metodo setAttribute() o l'attributo nodeValue del nodo dell'attributo.

Utilizzando setAttribute() per modificare l'attributo

Il metodo setAttribute() imposta il valore di un attributo esistente o crea un nuovo attributo.

Il seguente codice cambia l'attributo category dell'elemento <book>:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName('book');
x[0].setAttribute("category","child");

Esempio di spiegazione:

  • Utilizzando loadXMLDoc() Cambia "books.xml"Carica xmlDoc"
  • Ottieni il primo elemento <book>
  • Cambia il valore dell'attributo "category" in "child"

TIY

Esegui la scansione di tutti i <title> e aggiungi un nuovo attributo:TIY

Nota:Se l'attributo del nodo non esiste, viene creato un nuovo attributo (con il nome e il valore specificato).

Cambiare l'attributo utilizzando nodeValue

L'attributo nodeValue può essere utilizzato per cambiare il valore dell'attributo del nodo:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("book")[0]
y=x.getAttributeNode("category");
y.nodeValue="child";

Esempio di spiegazione:

  • Utilizzando loadXMLDoc() Cambia "books.xml"Carica xmlDoc"
  • Ottieni l'attributo "category" del primo elemento <book>
  • Cambia il valore del nodo dell'attributo in "child"

TIY