DOM 置換ノード
XML DOM ノードの置換
replaceChild() メソッドは、指定されたノードを置換します。
nodeValue プロパティは、テキスト ノード内のテキストを置き換えます。
以下の例では、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>
インスタンスの実行»
オンラインの例を表示するには、[インスタンスの実行] ボタンをクリックします
インスタンスの説明:
loadXMLDoc()を使用して「books.xml」をxmlDocにロードします
新しい要素ノードを作成します<book>
新しい要素ノードを作成します<title>
新しいAテキストを作成しますテキスト「A Notebook」のノード
この新しいテキスト ノードを新しい要素ノード <title> に追加します
この新しい要素ノード <title> を新しい要素ノード <book> に追加します
最初の <book> 要素ノードを新しい <book> 要素ノードに置き換えます
テキスト ノードのデータを置き換えます
replaceData() メソッドを使用して、テキスト ノードのデータを置き換えます。
replaceData() メソッドには 3 つのパラメータがあります:
offset - 文字の置換を開始する場所。オフセット値は0から始まります。長さ - 交換する文字の数
string -instance
rreee- runインスタンスを挿入する文字列»
例の説明:
loadXMLDoc()を使用して、「books.xml」をxmlDocにロードします
最初の<title>要素ノードのテキストノードを取得します
replaceDataメソッドを使用して、テキスト ノード 最初の 8 文字を「Easy」に置き換えます
代わりに、nodeValue 属性を使用してください
テキスト ノード内のデータを、nodeValue 属性で置き換える方が簡単です。
次のコード スニペットは、最初の <title> 要素のテキスト ノード値を「Easy Italian」に置き換えます。オンラインの例
- nodeValue 属性をこのテキスト ノードのテキストに変更します
- ノード値の変更の詳細については、「ノードの変更」の章を参照してください。