Inténtelo usted mismo - Ejemplos
Los ejemplos siguientes utilizan el archivo XML books.xml .
Añadir un nodo después del último nodo hijo
En este ejemplo se utiliza appendChild() para añadir un nodo hijo de un nodo existente.
Añadir un nodo antes de un nodo secundario especificado
Este ejemplo utiliza insertBefore() para insertar un nodo antes de un nodo secundario especificado.
Añadir un nuevo atributo
En este ejemplo se utiliza el setAttribute() método para agregar un nuevo atributo.
Añadir datos a un nodo de texto
En este ejemplo se utiliza insertData() para insertar datos en un nodo de texto existente.
Añadir un Nodo - appendChild()
El appendChild() método agrega un nodo secundario a un nodo existente.
Se añade el nuevo nodo (appended) después de nodos secundarios existentes.
Note: El uso insertBefore() si la posición del nodo es importante.
Este fragmento de código crea un elemento (<edition>) , y lo añade después de que el último hijo de la primera <book> elemento:
Ejemplo
newEle = xmlDoc.createElement("edition");
xmlDoc.getElementsByTagName("book")[0].appendChild(newEle);
Inténtalo tú mismo " Ejemplo explicó:
- Supongamos " books.xml " se carga en xmlDoc
- Crear un nuevo nodo <edition>
- Añadir el nodo a la primera <book> elemento
Este fragmento de código hace lo mismo que el anterior, pero se añade el nuevo elemento con un valor de:
Ejemplo
newEle = xmlDoc.createElement("edition");
newText=xmlDoc.createTextNode("first");
newEle.appendChild(newText);
xmlDoc.getElementsByTagName("book")[0].appendChild(newEle);
Inténtalo tú mismo " Ejemplo explicó:
- Supongamos " books.xml " se carga en xmlDoc
- Crear un nuevo nodo <edition>
- Crear un nuevo nodo de texto "first"
- Anexar el nodo de texto a la <edition> nodo
- Añadir el <addition> nodo al <book> elemento
Inserte un Nodo - insertBefore()
El insertBefore() método inserta un nodo antes de que un nodo hijo especificado.
Este método es útil cuando la posición del nodo añadido es importante:
Ejemplo
newNode = xmlDoc.createElement("book");
x = xmlDoc.documentElement;
y = xmlDoc.getElementsByTagName("book")[3];
x.insertBefore(newNode,y);
Inténtalo tú mismo " Ejemplo explicó:
- Supongamos " books.xml " se carga en xmlDoc
- Crear un nuevo nodo de elemento <book>
- Insertar el nuevo nodo en la parte delantera de la última <book> nodo de elemento
Si el segundo parámetro de insertBefore() es nulo, se añadirá el nuevo nodo después del último nodo hijo existente.
x.insertBefore(newNode,null) y x.appendChild(newNode) será tanto anexar un nuevo nodo secundario a x.
Añadir un nuevo atributo
El setAttribute() método establece el valor de un atributo.
Ejemplo
xmlDoc.getElementsByTagName('book')[0].setAttribute("edition","first");
Inténtalo tú mismo " Ejemplo explicó:
- Supongamos " books.xml " se ha cargado en xmlDoc
- Establecer el valor del atributo "edition" de "first" por primera <book> elemento
No hay un método llamado add Attribute()
El setAttribute() va a crear un nuevo atributo si el atributo no existe.
Note: Si el atributo ya existe, el setAttribute() método va a sobrescribir el valor existente.
Añadir texto a un nodo de texto - insertData()
El insertData() método inserta datos en un nodo de texto existente.
El insertData() método tiene dos parámetros:
- desplazamiento - ¿Por dónde empezar la inserción de caracteres (starts at zero)
- String - La cadena de insertar
El siguiente fragmento de código se sumará "Easy" al nodo de texto del primer <title> elemento del XML cargado:
Ejemplo
xmlDoc.getElementsByTagName("title")[0].childNodes[0].insertData(0,"Easy ");
Inténtalo tú mismo "