XML DOM-Knotenliste
- Previous Page DOM Node Information
- Next Page DOM Traversal Nodes
getElementsByTagName()
Methoden und childNodes
Eigenschaft verwendet wird, wird eine Knotenliste zurückgegeben.
DOM Knotenliste
wenn childNodes
oder getElementsByTagName()
Beim Aufrufen von Eigenschaften oder Methoden wie
Das NodeList-Objekt stellt eine Liste von Knoten dar, deren Reihenfolge mit der in XML übereinstimmt.
Die Knoten in der Knotenliste können durch Indexnummern, beginnend mit 0, erreicht werden.
Das Diagramm zeigt books.xml Knotenliste des <title>-Elements:

Vorausgesetzt, "books.xml" wurde in die Variable xmlDoc geladen.
Dieser Codeabschnitt gibt die Knotenliste der "title"-Elemente in "books.xml" zurück:
x = xmlDoc.getElementsByTagName("title");
Nach der Ausführung der obigen Anweisungen wird x zu einem NodeList-Objekt.
Der folgende Codeabschnitt gibt den Text des ersten <title>-Elements der Knotenliste (x) zurück:
Beispiel
var txt = x[0].childNodes[0].nodeValue;
Nach der Ausführung der obigen Anweisung wird txt = "雅舍谈吃".
Die Länge der Knotenliste
Das NodeList-Objekt wird sich selbst aktualisieren. Wenn Elemente hinzugefügt oder entfernt werden, wird die Liste automatisch aktualisiert.
Die Knotenliste length
Die Eigenschaft ist die Anzahl der Knoten in der Liste.
Dieser Code gibt die Anzahl der <title>-Elemente in "books.xml" zurück:
x = xmlDoc.getElementsByTagName('title').length;
Nach der Ausführung des obigen Satzes:x
hat einen Wert von 5.
Die Länge der Knotenliste kann verwendet werden, um alle Elemente der Liste zu durchsuchen.
Dieser Code verwendet length
durch die Attributiteration, um die Liste der <title>-Elemente zu durchsuchen:
Beispiel
x = xmlDoc.getElementsByTagName('title'); xLen = x.length; for (i = 0; i < xLen; i++) { txt += (x[i].childNodes[0].nodeValue) + " "; }
Example Explanation:
- Assume books.xml wurde geladen
xmlDoc
Chinese - Setzen Sie die Variable x, um alle Knotenlisten der title-Elemente zu speichern
- den Wert des Textknotens aus dem <title>-Element abrufen
DOM-Attributliste (Namensknotenmappe)
von Elementknoten attributes
Eigenschaften geben eine Liste von Attributknoten zurück.
Dies wird als Namensknotenmappe (named node map) bezeichnet, die ähnlich wie eine Knotenliste ist, hat jedoch unterschiedliche Methoden und Eigenschaften.
Die Eigenschaftsliste wird ebenfalls immer auf dem neuesten Stand gehalten. Wenn Eigenschaften hinzugefügt oder entfernt werden, wird die Liste automatisch aktualisiert.
Dieser Code gibt eine Liste von Attributknoten zurück, die aus dem ersten <book>-Element von "books.xml" stammen:
x = xmlDoc.getElementsByTagName('book')[0].attributes;
Nach der Ausführung des obigen Codes:x.length
entspricht der Anzahl der Eigenschaften und kann mit x.getNamedItem()
Gibt einen Attributknoten zurück.
Dieser Code liest den Wert der "category"-Eigenschaft des ersten Buches sowie die Anzahl der Eigenschaften aus:
Beispiel
x = xmlDoc.getElementsByTagName("book")[0].attributes; txt = x.getNamedItem("category").nodeValue + " " + x.length;
Example Explanation:
- Assume books.xml loaded into
xmlDoc
Chinese - Set the x variable to save the list of all attributes of the first <book> element
- Get the value of the "category" attribute and the length of the attribute list
- Previous Page DOM Node Information
- Next Page DOM Traversal Nodes