XML DOM チュートリアルlogin
XML DOM チュートリアル
著者:php.cn  更新時間:2022-04-13 15:27:56

DOM 置換ノード


XML DOM ノードの置換


replaceChild() メソッドは、指定されたノードを置換します。

nodeValue プロパティは、テキスト ノード内のテキストを置き換えます。


tryitimg.gif試してみる - 例


以下の例では、XML ファイル Books.xml を使用します。
外部 JavaScript にある関数loadXMLDoc()は、XML ファイルをロードするために使用されます。

要素ノードを置換する
この例では、replaceChild() を使用して最初の <book> ノードを置換します。

テキスト ノードのデータを置換する
この例では、nodeValue 属性を使用してテキスト ノードのデータを置換します。


要素ノードの置換

replaceChild()メソッドはノードの置換に使用されます。

次のコード スニペットは、最初の <book> 要素を置き換えます:

インスタンス

<!DOCTYPE html>
<html>
<head>
<script src="loadxmldoc.js"> 
</script>
</head>
<body>

<script>
xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.documentElement;

//create a book element, title element and a text node
newNode=xmlDoc.createElement("book");
newTitle=xmlDoc.createElement("title");
newText=xmlDoc.createTextNode("A Notebook");

//add the text node to the title node,
newTitle.appendChild(newText);
//add the title node to the book node
newNode.appendChild(newTitle);

y=xmlDoc.getElementsByTagName("book")[0]
//replace the first book node with the new node
x.replaceChild(newNode,y);

z=xmlDoc.getElementsByTagName("title");
for (i=0;i<z.length;i++)
{
document.write(z[i].childNodes[0].nodeValue);
document.write("<br>");
}
</script>
</body>
</html>

インスタンスの実行»

オンラインの例を表示するには、[インスタンスの実行] ボタンをクリックします

インスタンスの説明:

  1. loadXMLDoc()を使用して「books.xml」をxmlDocにロードします

  2. 新しい要素ノードを作成します<book>

  3. 新しい要素ノードを作成します<title>

  4. 新しいAテキストを作成しますテキスト「A Notebook」のノード

  5. この新しいテキスト ノードを新しい要素ノード <title> に追加します

  6. この新しい要素ノード <title> を新しい要素ノード <book> に追加します

  7. 最初の <book> 要素ノードを新しい <book> 要素ノードに置き換えます


テキスト ノードのデータを置き換えます

replaceData() メソッドを使用して、テキスト ノードのデータを置き換えます。

replaceData() メソッドには 3 つのパラメータがあります:

  • offset - 文字の置換を開始する場所。オフセット値は0から始まります。長さ - 交換する文字の数

  • string -instance

  • rreee
  • runインスタンスを挿入する文字列»

例の説明:

  1. loadXMLDoc()を使用して、「books.xml」をxmlDocにロードします

  2. 最初の<title>要素ノードのテキストノードを取得します

  3. replaceDataメソッドを使用して、テキスト ノード 最初の 8 文字を「Easy」に置き換えます


代わりに、nodeValue 属性を使用してください

テキスト ノード内のデータを、nodeValue 属性で置き換える方が簡単です。

次のコード スニペットは、最初の <title> 要素のテキスト ノード値を「Easy Italian」に置き換えます。オンラインの例

例の説明:


loadXMLDoc() を使用して "books.xml" を xmlDoc にロードします

最初の <title> 要素ノードのテキスト ノードを取得します

    nodeValue 属性をこのテキスト ノードのテキストに変更します
  1. ノード値の変更の詳細については、「ノードの変更」の章を参照してください。