XMLチュートリアル

XMLホーム XMLの紹介 XML使用方法 XMLツリー XML構文 XML要素 XML属性 XML名前空間 XML表示 XML HttpRequest XMLパーサー XML DOM XML XPath XML XSLT XML XQuery XML XLink XMLバリデーター XML DTD XMLスキーマ XMLサーバー XMLの例 XMLクイズ XML証明書

XML AJAX

AJAXの紹介 AJAX XMLHttp AJAXリクエスト AJAX応答 AJAXXMLファイル AJAX PHP AJAX ASP AJAXデータベース AJAXアプリケーション AJAXの例

XML DOM

DOMの紹介 DOMノード DOMアクセス DOMノード情報 DOMノードリスト DOMトラバース DOMナビゲーション DOMは値を取得します DOM変更ノード DOM削除ノード DOM置換ノード DOM作成ノード DOM追加ノード DOMクローンノード DOMの例

XPathチュートリアル

XPathの概要 XPathノード XPath構文 XPath軸 XPath演算子 XPathの例

XSLTチュートリアル

XSLTの紹介 XSL言語 XSLT変換 XSLT <テンプレート> XSLT <値> XSLT <for-each> XSLT <ソート> XSLT <if> XSLT <選択> XSLT適用 クライアント上のXSLT サーバー上のXSLT XSLT Edit XML XSLTの例

XQueryチュートリアル

XQueryの紹介 XQueryの例 XQuery FLWOR XQuery HTML XQueryの用語 XQuery構文 XQuery追加 XQuery Select XQuery関数

XML DTD

DTDの紹介 DTDビルディングブロック DTD要素 DTD属性 DTD要素と属性 DTDエンティティ DTDの例

XSDスキーマ

XSDの概要 XSDハウツー XSD <スキーマ> XSD要素 XSD属性 XSDの制限

XSDコンプレックス

XSD要素 XSDが空です XSD要素のみ XSDテキストのみ XSD混合 XSDインジケーター XSD <任意> XSD <anyAttribute> XSD置換 XSDの例

XSDデータ

XSD文字列 XSD日付 XSD数値 XSDその他 XSDリファレンス

Webサービス

XMLサービス XML WSDL XML SOAP XML RDF XML RSS

参考文献

DOMノードタイプ DOMノード DOM NodeList DOM NamedNodeMap DOMドキュメント DOM要素 DOM属性 DOMテキスト DOM CDATA DOMコメント DOM XMLHttpRequest DOMパーサー XSLT要素 XSLT / XPath関数

XMLDOMノードリスト


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


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

以下の例では、XMLファイル books.xmlを使用しています。


この例では、getElementsByTagName()メソッドを使用して、「books.xml」の最初の<title>要素からテキストを取得します。


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


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

××

ヘッダ


DOMノードリスト

childNodesやgetElementsByTagName()などのプロパティまたはメソッドを使用する場合、ノードリストオブジェクトが返されます。

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

ノードリスト内のノードには、0から始まるインデックス番号でアクセスします。

次の画像は、「 books.xmlの<title>要素のノードリストを表しています。

DOMノードリスト

「books.xml」が変数xmlDocにロードされているとします。

このコードフラグメントは、「books.xml」内のタイトル要素のノードリストを返します。

x = xmlDoc.getElementsByTagName("title");

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

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

var txt = x[0].childNodes[0].nodeValue;

上記のステートメントの実行後、txt = "毎日がイタリアン"。



ノードリストの長さ

ノードリストオブジェクトは、それ自体を最新の状態に保ちます。要素が削除または追加されると、リストは自動的に更新されます。

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

このコードフラグメントは、「books.xml」内の<title>要素の数を返します。

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. すべてのタイトル要素のノードリストを保持するようにx変数を設定します
  3. <title>要素からテキストノードの値を収集します

DOM属性リスト(名前付きノードマップ)

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

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

属性リストはそれ自体を最新の状態に保ちます。属性が削除または追加されると、リストは自動的に更新されます。

このコードフラグメントは、「books.xml」の最初の<book>要素から属性ノードのリストを返します。

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. 最初の<book>要素のすべての属性のリストを保持するようにx変数を設定します
  3. 「category」属性の値と属性リストの長さを取得します