tutoriais mais recente desenvolvimento web
 

XML Lista Node DOM


A lista de nós é devolvido pelo getElementsByTagName() método e propriedade childNodes.


Tente você mesmo - Exemplos

Os exemplos abaixo usar o arquivo XML books.xml .

Obter o texto da primeira <title> elemento
Este exemplo usa o getElementsByTagName() método para obter o texto da primeira <title> elemento em "books.xml" .

Loop através de nós usando a propriedade length
Este exemplo usa lista de nós e a propriedade comprimento para percorrer todos <title> elementos em "books.xml"

Pegue o atributo de um elemento
Este exemplo utiliza uma lista de atributos para obter atributo da primeira <book> elemento em "books.xml" .

×

Cabeçalho


Lista Node DOM

Ao usar propriedades ou métodos como childNodes ou getElementsByTagName() , um objeto lista de nós é retornado.

Um objeto da lista de nó representa uma lista de nós, na mesma ordem como no XML.

Nós na lista de nós são acessados ​​com números de índice a partir de 0.

A imagem a seguir representa uma lista nó do <title> elementos em " books.xml ":

lista de nós DOM

Suponha "books.xml" é carregado no xmlDoc variável.

Este fragmento de código retorna uma lista nó de elementos do título em "books.xml" :

x = xmlDoc.getElementsByTagName("title");

Após a execução da instrução acima, x é um objeto da lista de nó.

O fragmento de código a seguir retorna o texto da primeira <title> elemento na lista de nós (x) :

Exemplo

var txt = x[0].childNodes[0].nodeValue;
Tente você mesmo "

Após a execução da declaração acima, txt = "Everyday Italian" .


Lista nó Comprimento

Um objeto lista de nós mantém-se up-to-date. Se um elemento for excluído ou adicionado, a lista é atualizada automaticamente.

A propriedade comprimento de uma lista de nós é o número de nós na lista.

Este fragmento de código retorna o número de <title> elementos em "books.xml" :

x = xmlDoc.getElementsByTagName('title').length;

Após a execução da instrução acima, o valor de x será 4.

O comprimento da lista de nós pode ser usada para percorrer todos os elementos da lista.

Este fragmento de código usa a propriedade comprimento para percorrer a lista de <title> elementos:

Exemplo

x = xmlDoc.getElementsByTagName('title');
xLen = x.length;

for (i = 0; i <xLen; i++) {
    txt += x[i].childNodes[0].nodeValue) + " ";
}

Saída:

Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML
Tente você mesmo "

Exemplo explicou:

  1. Suponha " books.xml " é carregado no xmlDoc
  2. Defina a variável x para manter uma lista de nós de todos os elementos do título
  3. Recolher os valores de nó texto de <title> Elementos

DOM Lista de Atributos (Named Node Map)

A propriedade atributos de um nó de elemento retorna uma lista de nós de atributo.

Isto é chamado um mapa nó chamado, e é semelhante a uma lista de nós, com excepção de algumas diferenças nos métodos e propriedades.

A lista de atributos mantém-se up-to-date. Se um atributo é excluído ou adicionado, a lista é atualizada automaticamente.

Este fragmento de código retorna uma lista de nós de atributo a partir da primeira <book> elemento em "books.xml" :

x = xmlDoc.getElementsByTagName('book')[0].attributes;

Após a execução do código acima, x.length = é o número de atributos e x.getNamedItem() pode ser utilizado para devolver um nó de atributo.

Este fragmento de código obtém o valor da "category" atributo, eo número de atributos, de um livro:

Exemplo

x = xmlDoc.getElementsByTagName("book")[0].attributes;

txt = x.getNamedItem("category").nodeValue + " " + x.length;

Saída:

cooking 1
Tente você mesmo "

Exemplo explicou:

  1. Suponha " books.xml " é carregado no xmlDoc
  2. Defina a variável x para manter uma lista de todos os atributos da primeira <book> elemento
  3. Obter o valor da "category" atributo e o comprimento da lista de atributos