XML DOM Nodes Verwijderen
- Vorige pagina DOM - Verander knooppunten
- Volgende pagina DOM - Vervang knooppunten
removeChild()
方法删除指定的节点。
removeAttribute()
方法删除指定的属性。
删除元素节点
removeChild()
方法删除指定的节点。
当一个节点被删除时,它的所有子节点也会被删除。
此代码将从已加载的 xml 中删除第一个 <book> 元素:
Voorbeeld
y = xmlDoc.getElementsByTagName("book")[0]; xmlDoc.documentElement.removeChild(y);
Voorbeeld uitleg:
- Aanneming books.xml is geladen naar
xmlDoc
in - Stel de variabele
y
Zet de te verwijderen elementnode - Gebruik
removeChild()
方法从父节点中删除该元素节点
删除自己 - 删除当前节点
removeChild()
方法是唯一可以删除指定节点的方法。
当您导航到要删除的节点时,可以使用 parentNode
Eigenschappen en removeChild()
用于删除该节点的方法:
Voorbeeld
x = xmlDoc.getElementsByTagName("book")[0]; x.parentNode.removeChild(x);
Voorbeeld uitleg:
- Aanneming books.xml is geladen naar
xmlDoc
in - Stel de variabele
y
Zet de te verwijderen elementnode - Gebruik
parentNode
Eigenschappen enremoveChild()
De methode om elementnodes te verwijderen
Verwijder tekstnode
removeChild()
De methode kan ook worden gebruikt om tekstnodes te verwijderen:
Voorbeeld
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0]; x.removeChild(y);
Voorbeeld uitleg:
- Aanneming books.xml is geladen naar
xmlDoc
in - Stel de variabele
x
In als de eerste title element node - Stel de variabele
y
Zet de te verwijderen tekstnode - Gebruik
removeChild()
De methode om een node van de oudernode te verwijderen
Gebruik alleen removeChild()
Het verwijderen van tekst uit een node komt zelden voor. U kunt de nodeValue-eigenschap gebruiken in plaats van dat. Zie het volgende gedeelte.
Maak de tekstnode leeg
nodeValue
Eigenschappen kunnen worden gebruikt om de waarde van de tekstnode te wijzigen of leeg te maken:
Voorbeeld
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "";
Voorbeeld uitleg:
- Aanneming books.xml is geladen naar
xmlDoc
in - Verkrijg de eerste title element node
- Gebruik
nodeValue
Eigenschappen om de tekstnode van de tekst te wissen
Verwijder attribuutnode op basis van naam
removeAttribute()
De methode wordt gebruikt om een attribuutnode op basis van naam te verwijderen.
Voorbeeld 1
De volgende code verwijdert de "category" attribuut van het eerste <book> element:
x = xmlDoc.getElementsByTagName("book"); x[0].removeAttribute("category");
Voorbeeld uitleg:
- Aanneming books.xml is geladen naar
xmlDoc
in - Gebruik
getElementsByTagName()
Om de book node te verkrijgen - Verwijder de "category" attribuut van de eerste book element node
Voorbeeld 2
Herhaal en verwijder alle <book> elementen van de "category" attribuut:
for (i = 0; i < xLen; i++) { y = x.item(i); y.removeAttribute('category'); }
Verwijder attribuutnode op basis van object
removeAttributeNode()
De methode gebruikt een Node-object als parameter om een attribuutnode te verwijderen.
De volgende code verwijdert alle <book> elementen van alle attributen:
Voorbeeld
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); } }
Voorbeeld uitleg:
- Aanneming books.xml is geladen naar
xmlDoc
in - Gebruik
getElementsByTagName()
Om alle book-knooppunten te verkrijgen - Controleer of elke book-element een eigenschap heeft
- Verwijder de eigenschap van een book-element indien aanwezig
- Vorige pagina DOM - Verander knooppunten
- Volgende pagina DOM - Vervang knooppunten