XMLDOMノードの置き換え
- 前のページ DOM ノードの削除
- 次のページ DOM ノードの作成
replaceChild()
メソッドは指定されたノードを置き換えます
nodeValue
属性でテキストノード内のテキストを置き換えます
要素ノードを置き換えます
replaceChild()
メソッドはノードを置き換えるために使用されます。
以下のコードスニペットは最初の <book> 要素を置き換えます:
例
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.documentElement; // book要素、title要素、テキストノードを作成します newNode=xmlDoc.createElement("book"); newTitle=xmlDoc.createElement("title"); newText=xmlDoc.createTextNode("一本新书"); // テキストノードをtitleノードに追加します newTitle.appendChild(newText); // このtitleノードをbookノードに追加します newNode.appendChild(newTitle); y=xmlDoc.getElementsByTagName("book")[0]; // 新しいノードで最初のbookノードを置き換えます x.replaceChild(newNode,y);
例説明:
- を books.xml に
xmlDoc
中 - 新しい要素ノード <book> を作成します
- 新しい要素ノード <title> を作成します
- テキスト「一本新书」を含む新しいテキストノードを作成します
- 新しいテキストノードを新しい要素ノード <title> に追加します
- 新しい要素ノード <title> を新しい要素ノード <book> に追加します
- 最初の <book> 要素ノードを新しい <book> 要素ノードに置き換えます
テキストノード内のデータを置き換えます
replaceData()
メソッドはテキストノード内のデータを置き換えるために使用されます。
replaceData()
メソッドには3つのパラメータがあります:
- offset - 文字の置き換え開始位置。オフセット値は0から始まります
- length - 置き換える文字数
- string - 插入する文字列
例
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.replaceData(0,4,"一本新书");
例説明:
- を books.xml に
xmlDoc
中 - 最初の <title> ノードのテキストノードを取得します
- 使用
replaceData()
メソッドはテキストノードの最初の8文字を「一本新书」に置き換えます。
nodeValue属性を使用して
使用 nodeValue
属性でテキストノード内のデータを置き換えやすくなります。
以下のコードスニペットは、最初の <title> 要素のテキストノード値を「一本新书」で置き換えます:
例
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="一本新书";
例説明:
- を books.xml に
xmlDoc
中 - 最初の <title> ノードのテキストノードを取得します
- 使用
nodeValue
属性を使用してテキストノードのテキストを変更します
「ノードの変更」の章で、ノード値の変更に関する詳細な情報を読むことができます。
- 前のページ DOM ノードの削除
- 次のページ DOM ノードの作成