Gli ultimi tutorial di sviluppo web
 

XML DOM rimuovere i nodi


Il removeChild() metodo rimuove un nodo specificato.

Il removeAttribute() metodo rimuove un attributo specificato.


Provate voi stessi - Esempi

Gli esempi utilizzano il file XML books.xml .

Rimuovere un nodo elemento
Questo esempio utilizza removeChild() per rimuovere il primo <book> elemento.

Rimuovere il nodo elemento corrente
Questo esempio utilizza parentNode e removeChild() per rimuovere l'attuale <book> elemento.

Rimuovere un nodo di testo
Questo esempio utilizza removeChild() per rimuovere il nodo di testo dal primo <title> elemento.

Cancellare il testo di un nodo di testo
Questo esempio utilizza il nodeValue() di proprietà per cancellare il nodo di testo del primo <title> elemento.

Rimuovere un attributo per nome
Questo esempio utilizza removeAttribute() per rimuovere la "category" attributo dal primo <book> elemento.

Rimuovere gli attributi per oggetto
Questo esempio utilizza removeAttributeNode() per rimuovere tutti gli attributi di tutte le <book> elementi.

×

Intestazione


Rimuovere un nodo di elementi

Il removeChild() metodo rimuove un nodo specificato.

Quando un nodo viene rimosso, tutti i nodi figli vengono rimossi anche.

Questo codice rimuoverà il primo <book> elemento dal XML caricato:

Esempio

y = xmlDoc.getElementsByTagName("book")[0];

xmlDoc.documentElement.removeChild(y);
Prova tu stesso "

Esempio spiegato:

  1. Supponiamo " books.xml " viene caricato xmlDoc
  2. Impostare la variabile y essere il nodo dell'elemento da rimuovere
  3. Rimuovere il nodo elemento utilizzando il removeChild() metodo dal nodo genitore

Rimuovere Io - Rimuovere il nodo corrente

Il removeChild() il metodo è l'unico modo per rimuovere un nodo specificato.

Dopo aver navigato al nodo che si desidera rimuovere, è possibile rimuovere quel nodo utilizzando la proprietà parentNode e il removeChild() metodo:

Esempio

x = xmlDoc.getElementsByTagName("book")[0];

x.parentNode.removeChild(x);
Prova tu stesso "

Esempio spiegato:

  1. Supponiamo " books.xml " viene caricato in xmlDoc
  2. Impostare la variabile y essere il nodo dell'elemento da rimuovere
  3. Rimuovere il nodo elemento utilizzando la proprietà parentNode e il removeChild() metodo

Rimuovere un nodo di testo

Il removeChild() metodo può anche essere usato per rimuovere un nodo di testo:

Esempio

x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
x.removeChild(y);
Prova tu stesso "

Esempio spiegato:

  1. Supponiamo " books.xml " viene caricato in xmlDoc
  2. Impostare la variabile x per essere il nodo elemento primo titolo
  3. Impostare la variabile y essere il nodo di testo per rimuovere
  4. Rimuovere il nodo elemento utilizzando il removeChild() metodo dal nodo genitore

Non è molto comune usare removeChild() solo per rimuovere il testo da un nodo. La proprietà nodeValue può essere usato al posto. Vedere paragrafo successivo.


Cancellare un nodo di testo

La proprietà nodeValue può essere utilizzato per modificare il valore di un nodo di testo:

Esempio

xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "";
Prova tu stesso "

Esempio spiegato:

  1. Supponiamo " books.xml " viene caricato in xmlDoc
  2. Ottenere primo nodo figlio del primo elemento titolo.
  3. Utilizzare la proprietà nodeValue per cancellare il testo dal nodo di testo

Loop attraverso e cambiare il nodo di testo di tutte le <title> elementi: Provate voi stessi


Rimuovere un nodo attributo per nome

Il removeAttribute() metodo rimuove un nodo attributo con il suo nome.

Esempio: removeAttribute('category')

Questo codice rimuove la "category" attributo nella prima <book> elemento:

Esempio

x = xmlDoc.getElementsByTagName("book");
x[0].removeAttribute("category");
Prova tu stesso "

Esempio spiegato:

  1. Supponiamo " books.xml " viene caricato in xmlDoc
  2. Utilizzare getElementsByTagName() per ottenere i nodi del libro
  3. Rimuovere la "category" attribuire formare il nodo elemento primo libro

Loop attraverso e rimuovere la "category" attributo di tutti i <book> elementi: Provate voi stessi


Rimuovere i nodi attributo Object

Il metodo removeAttributeNode () rimuove un nodo attributo, utilizzando l'oggetto nodo come parametro.

Esempio: removeAttributeNode(x)

Questo codice rimuove tutti gli attributi di tutti <book> elementi:

Esempio

x = xmlDoc.getElementsByTagName("book");

for (i = 0; i < x.length; i++) {
    while (x[i].attributes.length > 0) {
        attnode = x[i].attributes[0];
        old_att = x[i].removeAttributeNode(attnode);
    }
}
Prova tu stesso "

Esempio spiegato:

  1. Supponiamo " books.xml " viene caricato in xmlDoc
  2. Utilizzare getElementsByTagName() per ottenere tutti i nodi del libro
  3. Per ogni elemento libro controllare se ci sono tutti gli attributi
  4. Mentre ci sono attributi in un elemento di libro, rimuovere l'attributo