最新のWeb開発のチュートリアル
 

XML DOMノードリスト


ノードのリストは、によって返されるgetElementsByTagName()メソッドとのchildNodesプロパティ。


それを自分で試してみてください - 例

以下の例は、XMLファイルの使用のBooks.xmlを

最初からテキストを取得<title>要素
この例では、使用していますgetElementsByTagName()最初からテキストを取得する方法を<title>の要素"books.xml"

lengthプロパティを使用してノードをループ
この例では、すべてをループしたノードリストとlengthプロパティを使用して<title>要素"books.xml"

ゲット 要素の属性
この例では、最初から属性を取得する属性リストを使用しています<book>の要素"books.xml"

×

ヘッダ


DOMノードリスト

プロパティまたはのchildNodesなどの方法使用している場合getElementsByTagName() 、ノードリストオブジェクトが返されます。

ノードリストオブジェクトは、XMLと同じ順序で、ノードのリストを表します。

ノードリスト内のノードは、0から始まるインデックス番号を使用してアクセスされています。

以下の画像は、ノードリスト表し<title> 」の要素をBooks.xmlを 」:

DOMノードリスト

仮定"books.xml"変数XMLDOCにロードされます。

このコードは、タイトル要素のノードリストを返す"books.xml"

x = xmlDoc.getElementsByTagName("title");

上記のステートメントの実行後、xはノードリストオブジェクトです。

次のコードは、最初からテキストを返します<title>ノードリスト内の要素(x)

var txt = x[0].childNodes[0].nodeValue;
»それを自分で試してみてください

上記のステートメントの実行後、TXT = "Everyday Italian"


ノードリストの長さ

ノードリストオブジェクトは、最新自体を保持します。 要素が削除又は追加された場合、リストが自動的に更新されます。

ノードリストのlengthプロパティは、リスト内のノードの数です。

このコードは、数を返します<title>の要素を"books.xml"

x = xmlDoc.getElementsByTagName('title').length;

上記のステートメントの実行後、xの値は4になります。

ノードリストの長さは、リスト内のすべての要素をループするために使用することができます。

このコードは、リストをループにlengthプロパティを使用して<title>要素:

x = xmlDoc.getElementsByTagName('title');
xLen = x.length;

for (i = 0; i <xLen; i++) {
    txt += x[i].childNodes[0].nodeValue) + " ";
}

出力:

Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML
»それを自分で試してみてください

例を説明しました:

  1. 「仮定のBooks.xmlが 「XMLDOCにロードされます
  2. すべてのtitle要素のノードリストを保持するために、x変数を設定します。
  3. テキストノード値を収集し<title>要素

DOMは、属性リスト(Named Node Map)

要素ノードの属性プロパティは、属性ノードのリストを返します。

これは、名前のノードマップと呼ばれ、メソッドとプロパティにいくつかの違いを除いて、ノードリストに類似しているされています。

属性リストは、最新自体を保持します。 属性が削除または追加された場合、リストが自動的に更新されます。

このコードは、最初から属性ノードのリストを返します<book>の要素"books.xml"

x = xmlDoc.getElementsByTagName('book')[0].attributes;

上記のコードの実行後、x.lengthは=属性との数ですx.getNamedItem()属性ノードを返すために使用することができます。

このコードは、の値を取得する"category"属性、および書籍の属性の数を:

x = xmlDoc.getElementsByTagName("book")[0].attributes;

txt = x.getNamedItem("category").nodeValue + " " + x.length;

出力:

cooking 1
»それを自分で試してみてください

例を説明しました:

  1. 「仮定のBooks.xmlが 「XMLDOCにロードされます
  2. 最初のすべての属性のリストを保持するために、x変数を設定し<book>要素を
  3. 値を取得"category"属性と属性リストの長さを