ノードが持つ子ノードを取得する - JavaScript Ajax プログラミング

PROGRAM


ノードが持つ子ノードを取得する

getElementById や getElementsByTagName で取得したノードが持つ子ノードを取得するには、そのノードの childNodes プロパティを参照します。

例えば次のような構造のノードがあったとします。

<Item>

<Id>000001</Id>

<Name>Item1</Name>

<Price>10000</Price>

</Item>

この時、Item タグを取得して、その子ノードのタグ名を順に表示したいような場合は、次のようなプログラムを作成する感じになります。

// Item タグを検出します。

pItemNodes = document.getElementsByTagName('Item');

 

// Item タグの最初の 1 つ目を取得しています。

pItemNode = pItemNodes[0];

 

// 対象の Item タグが子ノードを持っているかどうかを調べます。

if (pItemNode.hasChildNodes())

{

// 子ノードを持っていれば、それを順に辿って行きます。

pChilds = pItemNode.childNodes;

 

for (var i = 0; i < pChilds.length; i++)

{

// ここでは、子ノードのタグ名を画面に表示しています。

alert(pChilds[i].tagName);

}

}

子ノードがさらに子ノードを持つような場合も同様の方法で辿って行くことが可能です。


[ もどる ]