XML DOM childNodes 属性

定义和用法

childNodes 属性返回包含被选节点的子节点的 NodeList。

如果选定的节点没有子节点,则该属性返回不包含节点的 NodeList。

语法:

elementNode.childNodes

提示和注释

提示:如需循环子节点列表,使用 nextSibling 属性,要比使用父对象的 childNodes 列表效率更高。

实例

在所有的例子中,我们将使用 XML 文件 books.xml,以及 JavaScript 函数 loadXMLDoc()

例子 1

下面的代码片段输出 "books.xml" 中第一个 <title> 元素的文本节点:

xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
document.write(x.nodeValue);

Outputtet fra ovenstående kode:

Harry Potter

Eksempel 2

Følgende kodeudsnit udskriver antallet af underknudepunkter for den første <book>-element i "books.xml":

xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("book")[0].childNodes;
document.write(x.length);

Uddraget i Internet Explorer:

4

Uddraget i Mozilla browsere:

9

Internet Explorer ignorerer de tomme tekstknudepunkter, der genereres mellem noder (f.eks. linjeskifts tegn), mens Mozilla ikke gør det. Derfor er outputtet forskelligt i det ovennævnte eksempel.

For mere information om forskelle mellem IE og Mozilla browsere, besøg CodeW3C.coms XML DOM vejledning. DOM browser Dette afsnit.