ホーム HTML CSS XML JAVASCRIPT   PHP SQL MORE...   リファレンス 事例集    

XML DOM ノード値の取得

« 前章へ 次章へ »

nodeValue プロパティは、ノードのテキスト値を取得するのに使用します。

getAttribute() メソッドは、属性の値を返します。


要素の値を取得

DOM においては、すべてがノードです。 要素ノードは、テキスト値を持ちません。

要素ノードのテキストは、子ノードに格納されます。 このノードを、テキストノードと言います。

要素のテキストを取得する方法は、子ノード(テキストノード)の値を取得することです。


要素値の取得

getElementsByTagName() メソッドは、ソース文書への出現順に指定のタグ名を持つ全要素のノードリストを返します。

以下のコードは、loadXMLDoc() を使用して xmlDoc に "books.xml" をロードし、最初の <title> 要素を取出します:

xmlDoc=loadXMLDoc("books.xml");

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

childNodes プロパティは、子ノードのリストを返します。 <title> 要素は1つだけ子ノードを持っています。 それがテキストノードです。

以下のコードは、<title> 要素のテキストノードを取出します:

x=xmlDoc.getElementsByTagName("title")[0];
y=x.childNodes[0];

nodeValue プロパティは、テキストノードのテキスト値を返します:

x=xmlDoc.getElementsByTagName("title")[0];
y=x.childNodes[0];
txt=y.nodeValue;

試してください »

結果:  txt = "Everyday Italian"

全ての<title>要素を通るループ: Try it yourself


属性の値を取得

DOMでは、属性はノードです。 要素ノードと違い、属性ノードはテキスト値を持っています。

属性の値を取得する方法は、そのテキスト値を取得することです。

これは、getAttribute() メソッドを使用するか、属性ノード nodeValue プロパティを使用して取得することができます。


属性値の取得 - getAttribute()

getAttribute() メソッドは、属性を返します。

以下のコードは、最初の <title> 要素の "lang" 属性のテキスト値を取出します:

xmlDoc=loadXMLDoc("books.xml");

txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");

試してください »

結果:  txt = "en"

例の説明:

  1. loadXMLDoc() を用い、xmlDoc に "books.xml" をロードします
  2. txt変数に、最初のタイトル要素ノードの "lang" 属性値を設定します

すべての <book> 要素を通るループを行い、"category" 属性を取得します: 試してください


属性値の取得 - getAttributeNode()

getAttributeNode() メソッドは、属性ノードを返します。

以下のコードは、最初の "lang" 要素の <title> 属性のテキスト値を取出します:

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("title")[0].getAttributeNode("lang");
txt=x.nodeValue;

試してください »

結果:  txt = "en"

例の説明:

  1. loadXMLDoc() を用い、xmlDoc に "books.xml" をロードします
  2. 最初の <title> 要素ノードの "lang" 属性ノードを取得します
  3. txt 変数に属性の値を設定します

すべての <book> 要素を通るループを行い、"category" 属性を取得します: 試してください


« 前章へ 次章へ »