Provate voi stessi - Esempi
Gli esempi di seguito utilizzano il file XML books.xml .
Aggiungere un nodo dopo l'ultimo nodo figlio
Questo esempio utilizza appendChild() per aggiungere un nodo figlio di un nodo esistente.
Aggiungere un nodo prima di un nodo figlio specificato
Questo esempio utilizza insertBefore() per inserire un nodo prima un nodo figlio specificato.
Aggiungere un nuovo attributo
Questo esempio utilizza il setAttribute() metodo per aggiungere un nuovo attributo.
Aggiungere dati a un nodo di testo
Questo esempio utilizza insertData() per inserire dati in un nodo di testo esistente.
Aggiungere un nodo - appendChild()
Il appendChild() metodo aggiunge un nodo figlio di un nodo esistente.
È aggiunto il nuovo nodo (appended) dopo eventuali nodi figlio esistenti.
Note: Utilizzare insertBefore() se la posizione del nodo è importante.
Questo frammento di codice crea un elemento (<edition>) , e lo aggiunge dopo l'ultimo figlio del primo <book> elemento:
Esempio
newEle = xmlDoc.createElement("edition");
xmlDoc.getElementsByTagName("book")[0].appendChild(newEle);
Prova tu stesso " Esempio spiegato:
- Supponiamo " books.xml " viene caricato in xmlDoc
- Creare un nuovo nodo <edition>
- Aggiungere il nodo per la prima <book> elemento
Questo frammento di codice fa lo stesso come sopra, ma il nuovo elemento si aggiunge con un valore:
Esempio
newEle = xmlDoc.createElement("edition");
newText=xmlDoc.createTextNode("first");
newEle.appendChild(newText);
xmlDoc.getElementsByTagName("book")[0].appendChild(newEle);
Prova tu stesso " Esempio spiegato:
- Supponiamo " books.xml " viene caricato in xmlDoc
- Creare un nuovo nodo <edition>
- Creare un nuovo nodo di testo "first"
- Aggiungere il nodo di testo per il <edition> nodo
- Aggiungere il <addition> nodo al <book> elemento
Inserire un nodo - insertBefore()
Il insertBefore() metodo inserisce un nodo prima di un nodo figlio specificato.
Questo metodo è utile quando la posizione del nodo aggiunto è importante:
Esempio
newNode = xmlDoc.createElement("book");
x = xmlDoc.documentElement;
y = xmlDoc.getElementsByTagName("book")[3];
x.insertBefore(newNode,y);
Prova tu stesso " Esempio spiegato:
- Supponiamo " books.xml " viene caricato in xmlDoc
- Creare un nuovo nodo elemento <book>
- Inserire il nuovo nodo di fronte l'ultimo <book> nodo elemento
Se il secondo parametro di insertBefore() è nullo, il nuovo nodo verrà aggiunto dopo l'ultimo nodo figlio esistente.
x.insertBefore(newNode,null) e x.appendChild(newNode) saranno entrambi aggiungere un nuovo nodo figlio di x.
Aggiungere un nuovo attributo
Il setAttribute() metodo imposta il valore di un attributo.
Esempio spiegato:
- Supponiamo " books.xml " è stato caricato in xmlDoc
- Impostare il valore dell'attributo "edition" di "first" per la prima <book> elemento
Non esiste un metodo chiamato add Attribute()
Il setAttribute() creerà un nuovo attributo se l'attributo non esiste.
Note: Se l'attributo esiste già, il setAttribute() metodo sovrascrivere il valore esistente.
Aggiunta di testo a un nodo di testo - insertData()
Il insertData() metodo inserisce i dati in un nodo di testo esistente.
Il insertData() metodo ha due parametri:
- Offset - Da dove cominciare caratteri inserimento (starts at zero)
- String - La stringa da inserire
Il seguente frammento di codice aggiungerà "Easy" al nodo testo del primo <title> elemento del XML caricato:
Esempio
xmlDoc.getElementsByTagName("title")[0].childNodes[0].insertData(0,"Easy ");
Prova tu stesso "