Latest web development tutorials

高度なXML DOM

XMLのDOM - アドバンスト

、このチュートリアルの前の章 、我々は、XML DOMを導入して、XML文書からデータを取得するために、XML DOMのgetElementsByTagName()メソッドを使用しています。

この章では、他の重要なXML DOMメソッドの数を結合します。

あなたは私たちにでき、XML DOMチュートリアルのXML DOMの知識について詳しく知ることができます。


要素の値を取得します。

以下の例で使用されるXMLファイルのBooks.xml

次の例では、<title>要素の最初のテキスト値を取得します。

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

»をお試しください


プロパティの値を取得します

次の例では、「LANG」属性の最初の<title>要素のテキスト値を取得します。

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

»をお試しください


要素の値を変更します

次の例では、<title>要素を最初のテキスト値を変更します。

x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="Easy Cooking";

»をお試しください


新しいプロパティを作成します。

XML DOMのsetAttribute()メソッドは、既存のプロパティの値を変更したり、新しいプロパティを作成するために使用することができます。

次の例では、新しい属性(版= "最初")を作成し、それぞれの<書籍>要素に追加します。

x=xmlDoc.getElementsByTagName("book");

for(i=0;i<x.length;i++)
{
x[i].setAttribute("edition","first");
}

»をお試しください


要素を作成します。

XML DOMはcreateElement()メソッドは、新しい要素ノードを作成します。

XML DOMはcreateTextNode()メソッドは、新しいテキストノードを作成します。

XML DOMのappendChild()メソッドは、(最後の子ノードの後)ノードに子ノードを追加します。

テキストコンテンツを持つ新しい要素を作成するには、新しい要素ノード要素と新しいテキストノードを作成する必要があり、その後、彼は既存のノードに追加されました。

次の例では、次のテキストで、新しい要素(<版>)を作成します:まず、その後、最初の<書籍>要素に追加します。

newel=xmlDoc.createElement("edition");
newtext=xmlDoc.createTextNode("First");
newel.appendChild(newtext);

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

»をお試しください

例について説明しました

  • <編集>要素を作成します。
  • 値 "最初"のテキストノードを作成します
  • 新しい<版>要素にテキストノードを追加
  • <編集>要素は、最初の<書籍>要素に追加されます

要素を削除します

次の例では、最初のノードの最初の<書籍>要素を削除します。

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

»をお試しください

注:上記例では、ブラウザと異なるに応じて可能性があります。FirefoxはInternet Explorerがない場合があり、空のテキストノードとして新しい行を扱います。 あなたは私たちでできるXML DOMチュートリアルこの問題とどのようにそれを回避するための詳細を読んで。