XML DOM ノードクローン
- 前のページ DOM ノードの追加
- 次のページ DOM HttpRequest
インスタンス
以下の例では、XMLファイルを使用 books.xml。
関数 loadXMLDoc()、外部のJavaScriptでXMLファイルをロードするために使用されます。
- ノードをコピーし、それを既存のノードに追加
- この例では、cloneNode()を使用してノードをコピーし、それをXMLドキュメントのルートノードに追加します。
ノードのコピー
cloneNode() メソッドは指定されたノードのコピーを作成します。
cloneNode() メソッドにはパラメータがあります(trueまたはfalse)。このパラメータは、コピーされるノードが元のノードのすべての属性と子ノードを含むかどうかを示します。
以下のコードスニペットは、最初の <book> ノードをコピーし、ドキュメントのルートノードに追加します:
xmlDoc=loadXMLDoc("books.xml"); oldNode=xmlDoc.getElementsByTagName('book')[0]; newNode=oldNode.cloneNode(true); xmlDoc.documentElement.appendChild(newNode); //すべてのタイトルを出力 y=xmlDoc.getElementsByTagName("title"); for (i=0;i<y.length;i++) { document.write(y[i].childNodes[0].nodeValue); document.write("<br />"); }
出力:
ハリー・ポッター Everyday Italian XQuery Kick Start Learning XML ハリー・ポッター
例解:
- 使用して loadXMLDoc() "books.xml" xmlDoc に読み込む
- コピーするノードを取得
- cloneNode メソッドを使用してノードを "newNode" にコピー
- 新しいノードに新しいノードを追加
- ドキュメント内のすべての book の title を出力
- 前のページ DOM ノードの追加
- 次のページ DOM HttpRequest