Ultimele tutoriale de dezvoltare web
 

XML DOM Lista Node


O listă de noduri este returnat de getElementsByTagName() metoda și proprietatea childNodes.


Încearcă-l singur - Exemple

Exemplele de mai jos folosesc fișierul XML books.xml .

Ia textul din primul <title> elementul
Acest exemplu utilizează getElementsByTagName() metoda pentru a obține textul din primul <title> element din "books.xml" .

Buclă prin noduri folosind proprietatea de lungime
Acest exemplu utilizează lista nodului și proprietatea lungime bucla prin toate <title> elemente în "books.xml"

Obține atribut al unui element
Acest exemplu utilizează o listă de atribute pentru a obține atribut din primul <book> element în "books.xml" .

×

Antet


DOM Lista Node

Atunci când se utilizează proprietăți sau metode precum childNodes sau getElementsByTagName() , un obiect listă nod este returnat.

Un obiect listă nod reprezintă o listă de noduri, în aceeași ordine ca și în XML.

Nodurile din lista de noduri sunt accesate cu numere de index incepand de la 0.

Următoarea imagine reprezintă o listă nod de <title> elemente din „ books.xml “:

Lista de nod DOM

Să presupunem că "books.xml" este încărcat în xmlDoc variabilă.

Acest fragment de cod returnează o listă de elemente nod de titlu în "books.xml" :

x = xmlDoc.getElementsByTagName("title");

După executarea declarației de mai sus, x este un obiect listă nod.

Următorul fragment de cod returnează textul din primul <title> element din lista de noduri (x) :

Exemplu

var txt = x[0].childNodes[0].nodeValue;
Încearcă - l singur »

După executarea declarația de mai sus, txt = "Everyday Italian" .


Listă Nod Lungime

Un obiect listă nod în sine ține la zi. În cazul în care un element este șters sau adăugat, lista este actualizată automat.

Proprietatea Lungimea unei liste nod este numărul de noduri din listă.

Acest fragment de cod returnează numărul de <title> elemente în "books.xml" :

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

După executarea declarația de mai sus, valoarea lui x va fi 4.

Lungimea listei nod poate fi utilizat pentru a bucla prin toate elementele din listă.

Acest fragment de cod utilizează proprietatea lungime bucla prin lista de <title> elemente:

Exemplu

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

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

ieşire:

Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML
Încearcă - l singur »

Exemplu explicat:

  1. Să presupunem că „ books.xml “ este încărcat în xmlDoc
  2. Setați variabila x să dețină o listă a tuturor elementelor nod titlu
  3. Se colectează valorile de nod de text din <title> Elemente

Atribute DOM Lista (Named Node Map)

Proprietatea atributele unui nod element de returnează o listă de noduri de atribute.

Aceasta se numește o hartă nod pe nume, și este similar cu o listă de nod, cu excepția unor diferențe în metode și proprietăți.

O listă de atribute se ține la zi. În cazul în care un atribut este șters sau adăugat, lista este actualizată automat.

Acest fragment de cod returnează o listă de noduri de atribute din primul <book> element în "books.xml" :

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

După executarea codului de mai sus, x.length = este numărul de atribute și x. getNamedItem() x. getNamedItem() poate fi folosit pentru a returna un nod atribut.

Acest fragment de cod devine valoarea "category" atribut, precum și numărul de atribute, dintr - o carte:

Exemplu

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

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

ieşire:

cooking 1
Încearcă - l singur »

Exemplu explicat:

  1. Să presupunem că „ books.xml “ este încărcat în xmlDoc
  2. Setați variabila x să dețină o listă cu toate atributele primului <book> elementul
  3. Ia valoarea "category" atribut și lungimea listei de atribute