Neueste Web-Entwicklung Tutorials
 

XML DOM Node List


Eine Liste der Knoten wird durch die zurück getElementsByTagName() Methode und der Eigenschaft childnodes.


Probieren Sie es selbst - Beispiele

Die folgenden Beispiele verwenden , um die XML - Datei books.xml .

Holen Sie sich den Text aus dem ersten <title> Element
Dieses Beispiel verwendet die getElementsByTagName() Methode , um den Text aus dem ersten zu bekommen <title> Element in "books.xml" .

Schleife durch Knoten die Länge Eigenschaft verwendet
In diesem Beispiel wird der Knotenliste und die Länge Eigenschaft auf eine Schleife durch alle <title> Elemente in "books.xml"

Bekommen das Attribut eines Elements
In diesem Beispiel wird eine Attributliste Attribut aus dem ersten zu bekommen <book> Element in "books.xml" .

×

Kopfzeile


DOM Node List

Wenn Eigenschaften oder Methoden wie childnodes oder mit getElementsByTagName() wird ein Knotenliste Objekt zurückgegeben.

Ein Knotenliste Objekt stellt eine Liste der Knoten, in der gleichen Reihenfolge wie in der XML.

Knoten in der Knotenliste mit Indexnummern zugegriffen ab 0.

Das folgende Bild stellt einen Knoten Liste der <title> Elemente in " books.xml ":

DOM-Knotenliste

Angenommen "books.xml" wird in die Variable xmlDoc geladen.

Dieses Codefragment gibt eine Knotenliste von Titelelementen in "books.xml" :

x = xmlDoc.getElementsByTagName("title");

Nach der Ausführung der Anweisung oben, x eine Knotenliste Objekt.

Das folgende Codefragment gibt den Text aus dem ersten <title> Element in der Knotenliste (x) :

Beispiel

var txt = x[0].childNodes[0].nodeValue;
Versuch es selber "

Nach der Ausführung der Anweisung oben, txt = "Everyday Italian" .


Knotenliste Länge

Ein Knotenliste Objekt hält sich up-to-date. Wenn ein Element gelöscht oder hinzugefügt wird, wird die Liste automatisch aktualisiert.

Die Länge Eigenschaft einer Knotenliste ist die Anzahl der Knoten in der Liste.

Dieses Codefragment gibt die Anzahl der <title> Elemente in "books.xml" :

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

Nach der Ausführung der Anweisung oben, wird der Wert von x 4 sein.

Die Länge der Knotenliste kann durch alle Elemente in der Liste Schleife verwendet werden.

Dieses Codefragment verwendet die Länge Eigenschaft in einer Schleife durch die Liste der <title> Elemente:

Beispiel

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

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

Ausgabe:

Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML
Versuch es selber "

Erklärt Beispiel:

  1. Nehmen wir an " books.xml " geladen in xmlDoc
  2. Stellen Sie die x-Variable einen Knoten Liste aller Titelelemente zu halten
  3. Sammeln Sie die Textknoten Werte von <title> Elemente

DOM Attributliste (Named Node Map)

Die Attribute Eigenschaft eines Elementknotens liefert eine Liste von Attributknoten.

Dies wird eine benannte Knoten Karte genannt und ist ähnlich einer Knotenliste, mit Ausnahme einiger Unterschiede in den Methoden und Eigenschaften.

Eine Attributliste hält sich up-to-date. Wenn ein Attribut gelöscht oder hinzugefügt wird, wird die Liste automatisch aktualisiert.

Dieses Codefragment gibt eine Liste von Attributknoten aus dem ersten <book> Element in "books.xml" :

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

Nach der Ausführung des Codes oben x.length = die Anzahl der Attribute und x.getNamedItem() verwendet werden kann , einen Attributknoten zurückzukehren.

Dieses Codefragment wird der Wert der "category" Attribut, und die Anzahl der Attribute, eines Buches:

Beispiel

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

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

Ausgabe:

cooking 1
Versuch es selber "

Erklärt Beispiel:

  1. Nehmen wir an " books.xml " geladen in xmlDoc
  2. Stellen Sie die x - Variable eine Liste aller Attribute des ersten zu halten <book> Element
  3. Holen Sie sich den Wert der "category" Attribut und die Länge der Attributliste