XML DOM クローンノード
例
以下の例は、XMLファイルbooks.xmlを使用します。
外部JavaScriptの関数 loadXMLDoc()は、XMLファイルをロードするのに使用します。
ノードのコピーと既存ノードへの付加
この例は、cloneNode()を用いてノードをコピーし、XML文書のルートノードに付加します
ノードのコピー
cloneNode()メソッドは、指定されたノードのコピーを作成します。
cloneNode()メソッドは、パラメータ(true または false)を持っています。
このパラメタは、クローンノードが、オリジナルのノードの全属性と子ノードを含むかどうかを指定します。
以下のコードは、最初の<book>ノードをコピーし、文書のルートノードに追加します:
Example
xmlDoc=loadXMLDoc("books.xml");
oldNode=xmlDoc.getElementsByTagName('book')[0];
newNode=oldNode.cloneNode(true);
xmlDoc.documentElement.appendChild(newNode);
//Output all titles
y=xmlDoc.getElementsByTagName("title");
for (i=0;i<y.length;i++)
{
document.write(y[i].childNodes[0].nodeValue);
document.write("<br />");
}
|
出力:
Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML
Everyday Italian
|
試してください »
|
例の説明:
- loadXMLDoc()を用い、xmlDocに"books.xml"をロードします
- コピーするノードを取得します
- cloneNodeメソッドを使用して、"newNode"にノードをコピーします
- XML文書のルートノードに、新規ノードを付加します
- 文書における、全てのbookのタイトルを出力します
|