XML DOM childNodes 属性
❮ Element 元素对象
实例 1
以下代码片段将"books.xml"加载到 xmlDoc 中,并从"books.xml"中的第一个<title>元素获取文本节点:
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
var xmlDoc = xml.responseXML;
var x =
xmlDoc.getElementsByTagName("title")[0];
var y =
x.childNodes[0];
document.getElementById("demo").innerHTML
=
y.nodeValue;
}
上述代码的输出为:
Everyday Italian
亲自试一试 »
定义和用法
childNodes 属性返回包含选定节点的子节点的节点列表
如果选定节点没有子节点,则此属性返回不包含节点的节点列表。
语法
elementNode.childNodes
提示和注释
提示: 要在 childNodes 列表中循环,使用 nextSibling 属性比显式使用父对象的 childNodes 列表更有效。
实例
以下代码片段将"books.xml"加载到 xmlDoc 中,并从"books.xml" 中的第一个<book>元素获取子节点数:
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
var xmlDoc = xml.responseXML;
var x =
xmlDoc.getElementsByTagName("book")[0].childNodes;
document.getElementById("demo").innerHTML =
x.length;
}
上述代码的输出为:
9
在IE9及更早版本中,上述代码的输出将为:
4
亲自试一试 »
Firefox和大多数其他浏览器将空白或新行视为文本节点,而Internet Explorer则不会。因此,在上面的实例中,输出将不同。
要了解更多关于浏览器之间差异的信息,请访问DOM Browsers 章节。
❮ Element 元素对象