XML DOM solmun lista
getElementsByTagName()
方法和 childNodes
属性可返回节点的列表。
DOM solmun lista
当使用 childNodes
或 getElementsByTagName()
等属性或方法时,将返回 NodeList 对象。
NodeList 对象表示节点的列表,其顺序与 XML 中的顺序相同。
节点列表中的节点可通过从 0 开始的索引号进行访问。
下图表示 books.xml 中 <title> 元素的节点列表:

假设 "books.xml" 已被加载到变量 xmlDoc 中。
此代码片段返回 "books.xml" 中 title 元素的节点列表:
x = xmlDoc.getElementsByTagName("title");
执行完上面的语句后,x 就成为一个 NodeList 对象。
Seuraava koodinpätkä palauttaa ensimmäisen <title>-elementin tekstin solmun listassa (x):
Esimerkki
var txt = x[0].childNodes[0].nodeValue;
Suoritettuaan edellä olevat lauseet, txt = "雅舍谈吃".
solmun lista pituus
NodeList-objekti pitää aina ajan tasalla itseään. Jos poistat tai lisäät elementtejä, lista päivittyy automaattisesti.
solmun lista length
Ominaisuus on luettelon solmujen määrä.
Tämä koodi palauttaa "books.xml"-tiedoston <title>-elementtien määrän:
x = xmlDoc.getElementsByTagName('title').length;
Yllä olevan lauseen suorittamisen jälkeenx
arvon 5.
Solmun listan pituus voidaan käyttää silmukan toistamiseen luettelossa olevien kaikkien elementtien ympärillä.
Tämä koodi käyttää length
Ominaisuusluku toistaa <title>-elementtien luettelon:
Esimerkki
x = xmlDoc.getElementsByTagName('title'); xLen = x.length; for (i = 0; i <xLen; i++) { txt += x[i].childNodes[0].nodeValue) + " "; }
例子解释:
- 假设 books.xml On ladattu
xmlDoc
中 - Aseta muuttuja x tallentamaan kaikki title-elementtien solmun lista
- Hae tekstisolmun arvo <title>-elementistä
DOM ominaisuuslista (nimetty solmun mappa)
elementin attributes
Ominaisuus palauttaa ominaisuussolmun listan.
Tämä kutsutaan nimettyjä solmun mapeja (named node map), ja se on samanlaista kuin solmun lista, mutta menetelmät ja ominaisuudet ovat erilaisia.
Ominaisuuslista pitää aina ajan tasalla. Jos poistat tai lisäät ominaisuuksia, lista päivittyy automaattisesti.
Tämä koodi palauttaa "books.xml"-tiedoston ensimmäisen <book>-elementin ominaisuussolmut:
x = xmlDoc.getElementsByTagName('book')[0].attributes;
Yllä oleva koodi suoritettuaanx.length
On yhtä suuri kuin ominaisuuksien määrä, voit käyttää x.getNamedItem()
Palauttaa ominaisuus solmun.
Tämä koodi hakee ensimmäisen kirjan "category"-ominaisuuden arvon sekä ominaisuuksien määrän:
Esimerkki
x = xmlDoc.getElementsByTagName("book")[0].attributes; txt = x.getNamedItem("category").nodeValue + " " + x.length;
例子解释:
- 假设 books.xml 被加载到
xmlDoc
中 - 设置 x 变量以保存第一个 <book> 元素的所有属性的列表
- 获取 "category" 属性的值以及属性列表的长度