Creazione dei Node XML DOM

Esempio

Esempi di seguito utilizzano file XML books.xml.

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

Creare un nodo elemento
Questo esempio utilizza createElement() per creare un nuovo nodo elemento e appendChild() per aggiungerlo a un nodo.
Creare un nodo attributo utilizzando createAttribute
Questo esempio utilizza createAttribute() per creare un nuovo nodo attributo e setAttributeNode() per inserirlo in un elemento.
Creare un nodo attributo utilizzando setAttribute
Questo esempio utilizza setAttribute() per creare un nuovo attributo per un elemento.
Creare un nodo testo
Questo esempio utilizza createTextNode() per creare un nuovo nodo testo e appendChild() per aggiungerlo a un elemento.
Creare un nodo sezione CDATA
Questo esempio utilizza createCDATAsection() per creare un nodo sezione CDATA e appendChild() per aggiungerlo a un elemento.
Creazione di un nodo comment
Questo esempio utilizza createComment() per creare un nodo commento e appendChild() per aggiungerlo a un elemento.

Creare un nuovo nodo elemento

Il metodo createElement() crea un nuovo nodo elemento:

xmlDoc=loadXMLDoc("books.xml");
newel=xmlDoc.createElement("edition");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newel);

Esempio di spiegazione:

  1. Utilizzando loadXMLDoc() "books.xml"Carica xmlDoc"
  2. Creare un nuovo nodo elemento <edition>.
  3. Aggiungere questo nodo elemento al primo elemento <book>.

TIY

Eseguire una scansione e aggiungere un elemento a tutti gli elementi <book>:TIY

Creare un nuovo nodo attributo

createAttribute() viene utilizzato per creare un nuovo nodo attributo:

xmlDoc=loadXMLDoc("books.xml");
newatt=xmlDoc.createAttribute("edition");
newatt.nodeValue="first";
x=xmlDoc.getElementsByTagName("title");
x[0].setAttributeNode(newatt); 

Esempio di spiegazione:

  1. Utilizzando loadXMLDoc() "books.xml"Carica xmlDoc"
  2. Creare un nuovo nodo attributo "edition".
  3. Aggiungere questo nuovo nodo attributo al primo elemento <title>.

TIY

Eseguire una scansione di tutti gli elementi <title> e aggiungere un nuovo nodo attributo:TIY

Nota: Se l'attributo esiste già, viene sostituito dal nuovo attributo.

Creare attributi utilizzando setAttribute()

Poiché setAttribute() può creare nuovi attributi anche se non esistono, possiamo utilizzare questo metodo per creare nuovi attributi.

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

Esempio di spiegazione:

  1. Utilizzando loadXMLDoc() "books.xml"Carica xmlDoc"
  2. Impostare (creare) un attributo con valore "first" per il primo elemento <book>.

TIY

Eseguire una scansione di tutti gli elementi <title> e aggiungere un nuovo attributo:TIY

Creare un nodo testo

Il metodo createTextNode() crea un nuovo nodo testo:

xmlDoc=loadXMLDoc("books.xml");
newel=xmlDoc.createElement("edition");
newtext=xmlDoc.createTextNode("first");
newel.appendChild(newtext);
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newel);

Esempio di spiegazione:

  1. Utilizzando loadXMLDoc() "books.xml"Carica xmlDoc"
  2. Creare un nuovo nodo elemento <edition>.
  3. Creare un nuovo nodo testo con il testo "first".
  4. Aggiungere un nuovo nodo testo a questo nodo elemento.
  5. Aggiungere un nuovo nodo elemento al primo elemento <book>.

TIY

Aggiungere un nodo elemento con un nodo testo a tutti gli elementi <book>:TIY

Creare un nodo sezione CDATA

Il metodo createCDATASection() crea un nuovo nodo sezione CDATA.

xmlDoc=loadXMLDoc("books.xml");
newCDATA=xmlDoc.createCDATASection("Offerta speciale & Vendita di libri");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newCDATA);

Esempio di spiegazione:

  1. Utilizzando loadXMLDoc() "books.xml"Carica xmlDoc"
  2. Crea una nuova sezione CDATA
  3. Aggiungi questa nuova sezione CDATA al primo elemento <book>

TIY

Esempio: aggiungi una sezione CDATA a tutti gli elementi <book>:TIY

Creazione di un nodo comment

Il metodo createComment() crea un nuovo nodo comment.

xmlDoc=loadXMLDoc("books.xml");
newComment=xmlDoc.createComment("Revised March 2008");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newComment);

Esempio di spiegazione:

  1. Utilizzando loadXMLDoc() "books.xml"Carica xmlDoc"
  2. Crea un nuovo nodo comment
  3. Aggiungi questo nuovo nodo comment al primo elemento <book>

TIY

Esempio: aggiungi un nodo comment a tutti gli elementi <book>:TIY