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.