Excluir Nó DOM XML
- Página anterior Mudança de nó DOM
- Próxima página Substituição de nó DOM
removeChild()
方法删除指定的节点。
removeAttribute()
方法删除指定的属性。
删除元素节点
removeChild()
方法删除指定的节点。
当一个节点被删除时,它的所有子节点也会被删除。
这段代码将从已加载的 xml 中删除第一个 <book> 元素:
Exemplo
y = xmlDoc.getElementsByTagName("book")[0]; xmlDoc.documentElement.removeChild(y);
Explicação do exemplo:
- Supondo books.xml foi carregado para
xmlDoc
Em - Definir a variável
y
Definir como o nó de elemento a ser removido - Uso
removeChild()
方法从父节点中删除该元素节点
删除自己 - 删除当前节点
removeChild()
方法是唯一可以删除指定节点的方法。
当您导航到要删除的节点时,可以使用 parentNode
Propriedade e removeChild()
方法来删除该节点:
Exemplo
x = xmlDoc.getElementsByTagName("book")[0]; x.parentNode.removeChild(x);
Explicação do exemplo:
- Supondo books.xml foi carregado para
xmlDoc
Em - Definir a variável
y
Definir como o nó de elemento a ser removido - Uso
parentNode
Propriedade eremoveChild()
Método para remover nó de elemento
Remover nó de texto
removeChild()
O método também pode ser usado para remover o nó de texto:
Exemplo
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0]; x.removeChild(y);
Explicação do exemplo:
- Supondo books.xml foi carregado para
xmlDoc
Em - Definir a variável
x
como o primeiro nó do elemento title - Definir a variável
y
Definir como o nó de texto a ser removido - Uso
removeChild()
O método remove o nó do nó pai
Apenas use removeChild()
A condição de remoção de texto do nó não é comum. Pode usar a propriedade nodeValue como substituto. Veja o próximo parágrafo.
Limpar nó de texto
nodeValue
A propriedade pode ser usada para alterar ou limpar o valor do nó de texto:
Exemplo
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "";
Explicação do exemplo:
- Supondo books.xml foi carregado para
xmlDoc
Em - Obter o primeiro nó filho do elemento title
- Uso
nodeValue
Propriedade para limpar o texto do nó de texto
Remover nó de propriedade com base no nome
removeAttribute()
O método é usado para remover o nó de propriedade com base no nome.
Exemplo 1
O código a seguir remove a propriedade "category" do primeiro elemento <book>:
x = xmlDoc.getElementsByTagName("book"); x[0].removeAttribute("category");
Explicação do exemplo:
- Supondo books.xml foi carregado para
xmlDoc
Em - Uso
getElementsByTagName()
para obter o nó book - Remova a propriedade "category" do primeiro nó do elemento book
Exemplo 2
Loop e remova todas as propriedades "category" do elemento <book>:
for (i = 0; i < xLen; i++) { y = x.item(i); y.removeAttribute('category'); }
Remover nó de propriedade com base no objeto
removeAttributeNode()
O método usa um objeto Node como parâmetro para remover o nó de propriedade.
O código a seguir remove todas as propriedades do elemento <book>:
Exemplo
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); } }
Explicação do exemplo:
- Supondo books.xml foi carregado para
xmlDoc
Em - Uso
getElementsByTagName()
Para obter todos os nós book - Verifique se cada elemento book tem atributo
- Se houver atributo no elemento book, exclua o atributo
- Página anterior Mudança de nó DOM
- Próxima página Substituição de nó DOM