XML DOM 遍歷節點樹

遍歷 (Traverse) 意味著在節點樹中進行循環或移動。

實例

下面的例子使用 XML 文件 books.xml

函數 loadXMLString(),位于外部 JavaScript 中,用于加載 XML 文件。

遍歷一棵節點樹
循環 <book> 元素的所有子節點。

遍歷節點樹

您經常需要循環 XML 文檔,比如:當你需要提取每個元素的值時。

這個過程叫作“遍歷節點樹”。

下面的例子循環 <book> 的所有子節點,并顯示它們的名稱和值:

<html>
<head>
<script type="text/javascript" src="loadxmlstring.js"></script>
</head>
<body>
<script type="text/javascript">
text="<book>";
text=text+"<title>Harry Potter</title>";
text=text+"<author>J K. Rowling</author>";
text=text+"<year>2005</year>";
text=text+"</book>";
xmlDoc=loadXMLString(text);
// documentElement always represents the root node
x=xmlDoc.documentElement.childNodes;
for (i=0;i<x.length;i++)
{
document.write(x[i].nodeName);
document.write(": ");
document.write(x[i].childNodes[0].nodeValue);
document.write("<br />");
}
</script>
</body>
</html>

輸出:

title: Harry Potter
author: J K. Rowling
year: 2005

例子解釋:

  • loadXMLString() 把 XML 字符串載入 xmlDoc 中
  • 獲取根元素的子節點
  • 輸出每個子節點的名稱,以及文本節點的節點值

TIY