Latest web development tutorials

XML Acceso nodo DOM

Por DOM, se puede acceder a cada nodo del documento XML.


Ejemplos

Trate - Ejemplo

El siguiente ejemplo utiliza los archivos XML del Books.XML .
Función loadXMLDoc () , en un JavaScript externo se utiliza para cargar el archivo XML.

Utilice el número de índice de la lista de nodos de acceso a nodo
En este ejemplo se utiliza el método GetElementsByTagName () para obtener "books.xml" el tercer elemento <title>.

Utilice la propiedad de longitud de bucle a través de un nodo
En este ejemplo se utiliza la propiedad de longitud para recorrer todos el elemento "books.xml" <title>.

Ver tipo de nodo elemento
En este ejemplo se utiliza la propiedad nodeType llegar "books.xml" tipo de nodo del elemento raíz.

Atravesando nodo de elemento
En este ejemplo se utiliza la propiedad nodeType para hacer frente a "Books.xml" nodos de elemento.

Relación con el nodo a atravesar el nodo de elemento
En este ejemplo se utiliza la propiedad y la propiedad nodeType nextSibling de manejar "Books.xml" nodos de elemento.


nodo de acceso

Se puede acceder a los nodos de tres maneras:

1. Al utilizar el método getElementsByTagName ().

2. Ciclo (desplazamiento) árbol de nodos.

3. Mediante el uso de las relaciones de nodo en el árbol de navegación nodo.


getElementsByTagName método ()

getElementsByTagName () devuelve todos los elementos tienen el nombre de la etiqueta especificada.

gramática

node.getElementsByTagName("tagname");

Ejemplos

El ejemplo siguiente devuelve todos los <title> bajo el elemento x:

x.getElementsByTagName("title");

Tenga en cuenta que el ejemplo anterior sólo devuelve el elemento <title> x nodo. Para devolver el documento XML todos los elementos <title>, utilice:

xmlDoc.getElementsByTagName("title");

Aquí, xmlDoc es el propio documento (nodo de documento).


DOM lista de nodos (lista de nodos)

getElementsByTagName () devuelve una lista de nodos. lista de nodos es un conjunto de nodos.

El siguiente código utiliza loadXMLDoc () a " la Books.XML " en xmlDoc, a continuación, una lista de almacenado <title> nodo en la variable x:

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("title");

El acceso por número de índice x en el elemento <title>. Para acceder a la tercera <title>, se puede escribir:

y=x[2];

Nota: El índice comienza en 0.

En un capítulo posterior de este tutorial, aprenderá más sobre la lista de nodos (lista de nodos) conocimiento.


DOM lista de nodos longitud (lista de nodos de longitud)

propiedad de longitud Longitud define la lista de nodos (es decir, el número de nodos).

Puede utilizar la propiedad length para recorrer una lista de nodos:

Ejemplos

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("title");

for (i=0;i<x.length;i++)
{
document.write(x[i].childNodes[0].nodeValue);
document.write("
");
}

Trate »

Ejemplos explican:

  1. Utilice loadXMLDoc () a " la Books.XML " en xmlDoc
  2. Obtenga toda <title> nodo de elemento
  3. Cada valor de salida <title> del nodo de texto

Tipo de nodo (tipos de nodos)

DocumentElement atributo de un documento XML es el nodo raíz.

NombreNodo nodo de atributo es el nombre del nodo.

nodo de atributoNodeType es el tipo de nodo.

Va a aprender más sobre las propiedades de los nodos en el siguiente capítulo de este tutorial.

probar


Atravesando el nodo

El código siguiente itera a través de la raíz de los nodos secundarios, sino también el nodo de elemento:

Ejemplos

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.documentElement.childNodes;

for (i=0;i<x.length;i++)
{
if (x[i].nodeType==1)
{//Process only element nodes (type 1)
document.write(x[i].nodeName);
document.write("
");
}
}

Trate »

Ejemplos explican:

  1. Utilice loadXMLDoc () a " la Books.XML " en xmlDoc
  2. Obtención de nodos hijos del elemento raíz
  3. Tipo de nodo comprobar cada nodo hijo. Si el tipo de nodo es "1", el nodo es un elemento
  4. Si el nodo es un elemento, el nombre del nodo de salida

nodo de navegación de las relaciones

El siguiente código utiliza la relación nodo de árbol de nodos de navegación:

Ejemplos

xmlDoc=loadXMLDoc("books.xml");

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

for (i=0;i<x.length;i++)
{
if (y.nodeType==1)
{//Process only element nodes (type 1)
document.write(y.nodeName + "
");
}
y=y.nextSibling;
}

Trate »
  1. Utilice loadXMLDoc () a " la Books.XML " en xmlDoc
  2. Obtener el primer nodo hijo de un elemento de libros
  3. La variable "y" se establece en el primer elemento de un primer hijo libro
  4. Para cada nodo hijo (desde el primer nodo hijo "y" comenzaron), el tipo del nodo de comprobación, si el tipo de nodo es "1", el nodo es un elemento
  5. Si el nodo es un elemento, el nombre del nodo de salida
  6. La variable "y" se establece en el otro nodo del mismo, y ejecutar el ciclo de nuevo