XML DOM Eliminar nodos
El método removeChild() elimina el nodo especificado.
El método removeAttribute() elimina el atributo especificado.
Pruébalo - Ejemplo
El siguiente ejemplo utiliza el archivo XML。
funciónloadXMLDoc(), que se encuentra en JavaScript externo, se utiliza para cargar el archivo XML.
Este ejemplo utiliza removeChild() para eliminar el primer elemento <book>.
Este ejemplo utiliza parentNode y removeChild() para eliminar el elemento <book> actual.
Este ejemplo utiliza removeChild() para eliminar el nodo de texto del primer elemento <title>.
Este ejemplo utiliza la propiedad nodeValue() para vaciar el nodo de texto del primer elemento <title>.
Este ejemplo utiliza removeAttribute() para eliminar el atributo 'category' del primer elemento <book>.
Este ejemplo utiliza removeAttributeNode() para eliminar todos los atributos de todos los elementos <book>.
Eliminar nodos de elementos
El método removeChild() elimina el nodo especificado.
Cuando se elimina un nodo, todos sus nodos secundarios también se eliminan.
El siguiente fragmento de código eliminará el primer elemento <book> del XML cargado:
Ejemplo
y=xmlDoc.getElementsByTagName("book")[0];
xmlDoc.documentElement.removeChild(y);
Pruébalo »
Explicación del ejemplo:
- UsarloadXMLDoc()Cargaren xmlDoc
- Establecer la variable y como el nodo de elemento a eliminar
- Eliminar el nodo de elemento del nodo padre mediante el método removeChild()
Eliminarse a sí mismo - Eliminar el nodo actual
El método removeChild() es el único método que puede eliminar el nodo especificado.
Cuando ya haya navegado hasta el nodo que desea eliminar, puede eliminar este nodo mediante la propiedad parentNode y el método removeChild():
Ejemplo
x=xmlDoc.getElementsByTagName("book")[0];
x.parentNode.removeChild(x);
Pruébalo »
Explicación del ejemplo:
- UsarloadXMLDoc()Cargaren xmlDoc
- Establecer la variable y como el nodo de elemento a eliminar
- Eliminar este nodo de elemento mediante la propiedad parentNode y el método removeChild()
Eliminar nodos de texto
El método removeChild() se puede utilizar para eliminar nodos de texto:
Ejemplo
x=xmlDoc.getElementsByTagName("title")[0];
y=x.childNodes[0];
x.removeChild(y);
Pruébalo »
Explicación del ejemplo:
- UsarloadXMLDoc()Cargaren xmlDoc
- Establecer la variable x como el primer nodo de elemento title
- Establecer la variable y como el nodo de texto a eliminar
- Eliminar el nodo de elemento del nodo padre mediante el método removeChild()
No es muy común usar removeChild() para eliminar texto de un nodo. Puede usar la propiedad nodeValue en su lugar. Vea el siguiente párrafo.
Vaciar el nodo de texto
La propiedad nodeValue se puede utilizar para cambiar o vaciar el valor de un nodo de texto:
Ejemplo
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="";
Pruébalo »
Explicación del ejemplo:
- UsarloadXMLDoc()Cargaren xmlDoc
- Establecer la variable x como el nodo de texto del primer elemento title
- Usar la propiedad nodeValue para vaciar el texto del nodo de texto
Recorrer y cambiar los nodos de texto de todos los elementos <title>:
Eliminar nodo de atributo por nombre
removeAttribute(name) El método se utiliza para eliminar el nodo de atributo por nombre.
Ejemplo: removeAttribute('category')
El siguiente fragmento de código elimina el atributo 'category' del primer elemento <book>:
Ejemplo
x=xmlDoc.getElementsByTagName("book");
x[0].removeAttribute("category");
Pruébalo »
Explicación del ejemplo:
- UsarloadXMLDoc()Cargaren xmlDoc
- Usar getElementsByTagName() para obtener los nodos book
- Eliminar el atributo 'category' del primer nodo de elemento book
Recorrer y eliminar el atributo 'category' de todos los elementos <book>:
Eliminar nodo de atributo por objeto
removeAttributeNode(node) El método elimina el nodo de atributo mediante el uso de un objeto node como parámetro.
Ejemplo: removeAttributeNode(x)
El siguiente fragmento de código elimina todos los atributos de todos los elementos <book>:
Ejemplo
Pruébalo »
Explicación del ejemplo:
- UsarloadXMLDoc()Cargaren xmlDoc
- Usar getElementsByTagName() para obtener todos los nodos book
- Comprobar si cada elemento book tiene atributos
- Si existe un atributo en algún elemento book, eliminar dicho atributo.
Otras extensiones