XML DOM Clone Nodes
Examples
The examples below use the XML file
books.xml.
A function, loadXMLDoc(), in an external JavaScript is used to load the XML file.
Copy a node
and append it to an existing node
This example uses cloneNode() to copy a node and append it to
the root node of the XML document
Copy a Node
The cloneNode() method creates a copy of a specified node.
The cloneNode() method has a parameter (true or false). This
parameter indicates if the cloned node should include all attributes and child
nodes of the original node.
The following code fragment copies the first <book> node and appends it
to the root node of the document:
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 />");
}
|
Output:
Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML
Everyday Italian
|
Example explained:
- Load "books.xml"
into xmlDoc using loadXMLDoc()
- Get the node to copy
- Copy the node into "newNode" using the cloneNode method
- Append the new node to the the root node of the XML document
- Output all titles for all books in the document
Try
it yourself
|
|
Get Your Diploma!
W3Schools' Online Certification Program is the perfect solution for busy
professionals who need to balance work, family, and career building.
The HTML Certificate is for developers who want to document their knowledge of HTML, XHTML, and CSS.
The JavaScript Certificate is for developers who want to document their knowledge of JavaScript and the HTML DOM.
The XML Certificate is for developers who want to document their knowledge of XML, XML DOM and XSLT.
The ASP Certificate is for developers who want to document their knowledge of ASP, SQL, and ADO.
The PHP Certificate is for developers who want to document their knowledge of PHP and SQL (MySQL).
|
|