Esercitazione XML

XML CASA Introduzione XML XML Come usare Albero XML Sintassi XML Elementi XML Attributi XML Spazi dei nomi XML Visualizzazione XML Richiesta HTTP XML Analizzatore XML XML DOM XPath XML XML XSLT XQuery XML XML XLink Validatore XML DTD XML Schema XML Server XML Esempi XML Quiz XML Certificato XML

XML AJAX

Introduzione AJAX AJAX XMLHttp Richiesta AJAX Risposta dell'AJAX File XML AJAX AJAX PHP AJAX ASP Database AJAX Applicazioni AJAX Esempi AJAX

XML DOM

DOM Introduzione Nodi DOM Accesso DOM Informazioni sul nodo DOM Elenco dei nodi DOM DOM attraversando Navigazione DOM DOM Ottieni valori Nodi di modifica DOM DOM Rimuovere i nodi DOM Sostituisci nodi DOM Crea nodi DOM Aggiungi nodi Clonazione dei nodi DOM Esempi DOM

Esercitazione XPath

Introduzione a XPath Nodi XPath Sintassi XPath Assi XPath Operatori XPath Esempi di XPath

Esercitazione XSLT

Introduzione a XSLT Lingue XSL Trasformazione XSLT XSLT <modello> XSLT <valore-di> XSLT <per-ciascuno> XSLT <ordina> XSLT <se> XSLT <scegli> Applicare XSLT XSLT sul Cliente XSLT sul server XSLT Modifica XML Esempi XSLT

Esercitazione XQuery

Introduzione a XQuery Esempio XQuery XQuery FLWOR XQuery HTML Termini di XQuery Sintassi XQuery Aggiungi XQuery XQuery Seleziona Funzioni XQuery

DTD XML

Introduzione alla DTD Blocchi di costruzione DTD Elementi DTD Attributi DTD Elementi DTD vs Attr Entità DTD Esempi di DTD

Schema XSD

Introduzione all'XSD XSD Come fare per XSD <schema> Elementi XSD Attributi XSD Restrizioni XSD

Complesso XSD

Elementi XSD XSD vuoto Solo elementi XSD Solo testo XSD XSD misto Indicatori XSD XSD <qualsiasi> XSD <qualsiasi attributo> Sostituzione XSD Esempio XSD

Dati XSD

Stringa XSD Data XSD Numerico XSD XSD Varie Riferimento XSD

Servizi Web

Servizi XML XML WSDL SAPONE XML XML RDF RSS XML

Riferimenti

Tipi di nodi DOM Nodo DOM Elenco nodi DOM DOM NamedNodeMap Documento DOM Elemento DOM Attributo DOM Testo DOM DOM CDATA Commento DOM DOM XMLHttpRichiesta Analizzatore DOM Elementi XSLT Funzioni XSLT/XPath

XML DOM Rimuovere i nodi


Il metodo removeChild() rimuove un nodo specificato.

Il metodo removeAttribute() rimuove un attributo specificato.


Provalo tu stesso - Esempi

Gli esempi utilizzano il file XML books.xml .


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


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


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


In questo esempio viene utilizzata la proprietà nodeValue() per cancellare il nodo di testo del primo elemento <title>.


Questo esempio utilizza removeAttribute() per rimuovere l'attributo "categoria" dal primo elemento <book>.


Questo esempio utilizza removeAttributeNode() per rimuovere tutti gli attributi da tutti gli elementi <book>.

×

Intestazione


Rimuovere un nodo elemento

Il metodo removeChild() rimuove un nodo specificato.

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

Questo codice rimuoverà il primo elemento <book> dall'xml caricato:

Esempio

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

xmlDoc.documentElement.removeChild(y);

Esempio spiegato:

  1. Supponiamo che " books.xml " sia caricato in xmlDoc
  2. Imposta la variabile y come nodo dell'elemento da rimuovere
  3. Rimuovere il nodo dell'elemento utilizzando il metodo removeChild() dal nodo padre


Rimuovi me stesso - Rimuovi il nodo corrente

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

Quando sei passato al nodo che vuoi rimuovere, è possibile rimuovere quel nodo usando la proprietà parentNode e il metodo removeChild():

Esempio

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

x.parentNode.removeChild(x);

Esempio spiegato:

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

Rimuovere un nodo di testo

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

Esempio

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

Esempio spiegato:

  1. Supponiamo che " books.xml " sia caricato in xmlDoc
  2. Imposta la variabile x come primo nodo dell'elemento titolo
  3. Imposta la variabile y come nodo di testo da rimuovere
  4. Rimuovere il nodo dell'elemento utilizzando il metodo removeChild() dal nodo padre

Non è molto comune usare removeChild() solo per rimuovere il testo da un nodo. È invece possibile utilizzare la proprietà nodeValue. Vedi paragrafo successivo.


Cancella un nodo di testo

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

Esempio

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

Esempio spiegato:

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

Rimuovere un nodo di attributo per nome

Il metodo removeAttribute( ) rimuove un nodo di attributo in base al suo nome.

Esempio: removeAttribute('categoria')

Questo codice rimuove l'attributo "categoria" nel primo elemento <book>:

Esempio

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

Esempio spiegato:

  1. Supponiamo che " books.xml " sia caricato in xmlDoc
  2. Usa getElementsByTagName() per ottenere nodi libro
  3. Rimuovere l'attributo "categoria" dal primo nodo dell'elemento libro

Scorri e rimuovi l'attributo "categoria" di tutti gli elementi di <libro>:


Rimuovi i nodi di attributo per oggetto

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

Esempio: removeAttributeNode(x)

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

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);
    }
}

Esempio spiegato:

  1. Supponiamo che " books.xml " sia caricato in xmlDoc
  2. Usa getElementsByTagName() per ottenere tutti i nodi del libro
  3. Per ogni elemento del libro controlla se ci sono degli attributi
  4. Mentre ci sono attributi in un elemento libro, rimuovi l'attributo