XML DOM ノードツリーのトラバース
トラバースとは、ノードツリー全体をループまたは移動することをいいます。
ノードツリーのトラバース
例えば各要素の値を取り出すときなど、XML 文書をループしたいと思う場合がよくあります 。
これを、"ノードツリーのトラバース" と言います。
次の例は、<book>要素のすべての子ノードを辿りながらループし、名前と値を表示します:
例
<html>
<head>
<script type="text/javascript" src="loadxmlstring.js"></script>
</head>
<body>
<script type="text/javascript">
text="<book>";
text=text+"<title>Everyday Italian</title>";
text=text+"<author>Giada De Laurentiis</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: Everyday Italian
author: Giada De Laurentiis
year: 2005
|
Try it yourself »
|
例の説明:
- loadXMLString() は、XMLストリングを xmlDoc にロードします
- ルート要素の子ノードを取得します
- 各子ノードに対するテキストノードのノード名とノード値を出力します
|