XML DOM nodlista
- Previous Page DOM Node Information
- Next Page DOM Traversal Nodes
getElementsByTagName()
metoder och childNodes
egenskapen kan en lista med noder returneras.
DOM nod lista
När du använder childNodes
eller getElementsByTagName()
När du använder egenskaper eller metoder, returneras NodeList-objekt.
NodeList-objektet representerar en lista med noder, där ordningen är densamma som i XML.
Noderna i nodlistan kan nås genom att använda index som börjar vid 0.
Följande bild representerar books.xml Nodellista för <title>-elementet:

Anta att "books.xml" redan har laddats in i variabeln xmlDoc.
Denna kodbit returnerar en NodeList av "books.xml"-elements med titel:
x = xmlDoc.getElementsByTagName("title");
Efter att ha kört de ovanstående语句,x blir en NodeList-objekt.
Följande kodsnutt returnerar texten för det första <title>-elementet i nodlistan (x):
Exempel
var txt = x[0].childNodes[0].nodeValue;
Efter att ovanstående sats har körts, txt = "雅舍谈吃".
nodlistlängd
NodeList-objektet kommer att hållas uppdaterat. Om element läggs till eller tas bort, uppdateras listan automatiskt.
nodlistans length
egenskaperna är antalet noder i listan.
Denna kod returnerar antalet <title>-element i "books.xml":
x = xmlDoc.getElementsByTagName('title').length;
Efter att ovanstående sats har körts,x
är 5.
längden på nodlistan kan användas för att traversera alla element i listan.
Denna kod använder length
att genomgå egenskapslistan för att traversera listan över <title>-element:
Exempel
x = xmlDoc.getElementsByTagName('title'); xLen = x.length; for (i = 0; i < xLen; i++) { txt += (x[i].childNodes[0].nodeValue) + " "; }
Example Explanation:
- Assume books.xml har laddats in
xmlDoc
Middle - Använd x-variabeln för att spara en lista med noder för alla title-element
- Hämtar värdet för textnoden från <title>-elementet
DOM-egenskapslista (namngiven nodmapp)
elementnodens attributes
Egenskaper returnerar en lista med egenskapsnoder.
Detta kallas namngiven nodmapp (named node map), och är liknande en nodlista, men med olika metoder och egenskaper.
Egenskapslistan kommer också att hållas uppdaterad. Om egenskaper läggs till eller tas bort, uppdateras listan automatiskt.
Denna kod returnerar en lista med egenskapsnoder från den första <book>-elementet i "books.xml":
x = xmlDoc.getElementsByTagName('book')[0].attributes;
Efter att ovanstående kod har körts,x.length
är lika med antalet egenskaper, och kan användas x.getNamedItem()
Returnerar en egenskapsnod.
Denna kod hämtar värdet för "category"-egenskapen hos det första boken samt antalet egenskaper:
Exempel
x = xmlDoc.getElementsByTagName("book")[0].attributes; txt = x.getNamedItem("category").nodeValue + " " + x.length;
Example Explanation:
- Assume books.xml loaded into
xmlDoc
Middle - 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