Neueste Web-Entwicklung Tutorials
 

XML DOM entfernen Knoten


Die removeChild() Methode Entfernt einen bestimmten Knoten.

Die removeAttribute() -Methode entfernt einen bestimmten Attribut.


Probieren Sie es selbst - Beispiele

Die Beispiele verwenden , um die XML - Datei books.xml .

Entfernen Sie einen Elementknoten
In diesem Beispiel wird removeChild() die erste zu entfernen <book> Element.

Entfernen Sie die aktuelle Elementknoten
In diesem Beispiel wird parentNode und removeChild() den Strom zu entfernen <book> Element.

Entfernen Sie einen Textknoten
In diesem Beispiel wird removeChild() den Textknoten aus dem ersten zu entfernen <title> Element.

Löschen Sie den Text eines Textknoten
Dieses Beispiel verwendet die nodeValue() Eigenschaft den Textknoten des ersten zu löschen <title> Element.

Entfernen Sie ein Attribut mit Namen
In diesem Beispiel wird removeAttribute() , die zu entfernen "category" Attribut aus dem ersten <book> Element.

Entfernen Sie die Attribute von Objekt
In diesem Beispiel wird removeAttributeNode() alle Attribute von allen zu entfernen <book> Elemente.

×

Kopfzeile


Entfernen Sie einen Elementknoten

Die removeChild() Methode Entfernt einen bestimmten Knoten.

Wenn ein Knoten entfernt wird, werden alle untergeordneten Knoten ebenfalls entfernt.

Dieser Code wird das erste entfernen <book> Element aus der geladenen xml:

Beispiel

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

xmlDoc.documentElement.removeChild(y);
Versuch es selber "

Erklärt Beispiel:

  1. Nehmen wir an " books.xml " geladen xmlDoc
  2. Setzen Sie die Variable y das Element Knoten zu entfernen
  3. Entfernen Sie das Element Knoten durch die Verwendung von removeChild() -Methode von der übergeordneten Knoten

Entfernen Myself - Entfernen Sie die aktuelle Knoten

Die removeChild() Methode ist die einzige Möglichkeit , einen bestimmten Knoten zu entfernen.

Wenn Sie an den Knoten navigiert haben Sie entfernen möchten, ist es möglich , dass der Knoten mit der parentNode Eigenschaft und die zu entfernen removeChild() Methode:

Beispiel

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

x.parentNode.removeChild(x);
Versuch es selber "

Erklärt Beispiel:

  1. Nehmen wir an " books.xml " geladen in xmlDoc
  2. Setzen Sie die Variable y das Element Knoten zu entfernen
  3. Entfernen Sie den Elementknoten durch die parentNode Eigenschaft verwenden und die removeChild() Methode

Entfernen Sie einen Textknoten

Die removeChild() Methode kann auch einen Textknoten zu entfernen , verwendet werden:

Beispiel

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

Erklärt Beispiel:

  1. Nehmen wir an " books.xml " geladen in xmlDoc
  2. Setzen Sie die Variable x der erste Titel Elementknoten zu sein
  3. Setzen Sie die Variable y den Textknoten zu entfernen
  4. Entfernen Sie das Element Knoten durch die Verwendung von removeChild() -Methode von der übergeordneten Knoten

Es ist nicht sehr häufig zu verwenden removeChild() nur den Text von einem Knoten zu entfernen. Die nodeValue Eigenschaft kann stattdessen verwendet werden. Siehe nächsten Absatz.


Deaktivieren Sie einen Textknoten

Die nodeValue Eigenschaft kann verwendet werden , um den Wert eines Textknoten zu ändern:

Beispiel

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

Erklärt Beispiel:

  1. Nehmen wir an " books.xml " geladen in xmlDoc
  2. Holen Sie sich das erste erstes Kind-Knotens Titelelement.
  3. Verwenden Sie die nodeValue Eigenschaft den Text aus dem Textknoten zu löschen

Schleife durch und ändern Sie den Textknoten aller <title> Elemente: Probieren Sie es selbst


Entfernen Sie einen Attributknoten nach Namen

Die removeAttribute() -Methode entfernt von seinem Namen einen Attributknoten.

Beispiel: removeAttribute('category')

Dieser Code entfernt die "category" Attribut in der ersten <book> Element:

Beispiel

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

Erklärt Beispiel:

  1. Nehmen wir an " books.xml " geladen in xmlDoc
  2. Verwenden Sie getElementsByTagName() Buch Knoten zu erhalten
  3. Entfernen Sie die "category" Attribut , das erste Buch Elementknoten bilden

Schleife durch und entfernen Sie die "category" Attribut aller <book> Elemente: Probieren Sie es selbst


Entfernen Sie Attributknoten von Object

Die removeAttributeNode () -Methode entfernt einen Attributknoten, den Knoten - Objekt als Parameter.

Beispiel: removeAttributeNode(x)

Dieser Code entfernt alle Attribute aller <book> Elemente:

Beispiel

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);
    }
}
Versuch es selber "

Erklärt Beispiel:

  1. Nehmen wir an " books.xml " geladen in xmlDoc
  2. Verwenden Sie getElementsByTagName() , um alle Buch Knoten erhalten
  3. Für jedes Buch Element überprüfen, ob es irgendwelche Attribute
  4. Zwar gibt es Attribute in einem Buch Element sind, entfernen Sie das Attribut