XML DOM 克隆節點

嘗試一下 - 實例
下面的實例使用 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);
//Output all titles
y=xmlDoc.getElementsByTagName("title");
for (i=0;i<y.length;i++)
{
document.write(y[i].childNodes[0].nodeValue);
document.write("
");
}
輸出:
Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML
Everyday Italian
嘗試一下 ? 實例解釋:
- 使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
- 獲取要復制的節點
- 使用 cloneNode 方法把節點復制到 "newNode" 中
- 向 XML 文檔的根節點追加新的節點
- 輸出文檔中所有 book 的所有 title