XML DOM childNodes 屬性
❮ 元素物件
示例 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 屬性返回一個 NodeList,其中包含所選節點的子節點。
如果所選節點沒有子節點,此屬性將返回一個不包含任何節點的 NodeList。
語法
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 則不會。因此,在上面的示例中,輸出會有所不同。
有關瀏覽器差異的更多資訊,請訪問我們的 XML DOM 教程中的 DOM 瀏覽器章節。
❮ 元素物件