spacer
Yehuda Shiran February 7, 2002
Adding A Tag to An XML Tree
Tips: February 2002

Yehuda Shiran, Ph.D.
Doc JavaScript

Developer News
Microsoft Shows Off Silverlight 4, IE9 Plans
Metasploit Expands Vulnerability Test Framework
HyperCard Reborn?

You create an element node with the createElement() method. Its syntax is:

  createElement(tagName)
where tagName is a string specifying the new tag name. This name will be echoed in the new node's nodeName property.

Let's look at an example. First, let's read our mydvd XML file:

  var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
  xmlDoc.async = false;
  xmlDoc.load("mydvd.xml");
Set the root node:

  root = xmlDoc.documentElement;
We want to add a new tag, preparedby. This tag will include the name of the person that prepared the sales report of the mydvd store. Creating the element is straightforward:

  newElem = xmlDoc.createElement("preparedby"); 
We need to decide now where to put the new tag. We decided to add it to the <summary> tag, which is the root's (<sales>'s) first child. We can append the new tag to <summary>'s tags. Here is the code:

  root.childNodes.item(0).appendChild(newElem);
We can assign a value to the new tag:

  root.childNodes.item(0).lastChild.text = "Yehuda Shiran";
The addElement() function summarizes the above:

  function addElement() {
    var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
    var root;
    var newElem;
    xmlDoc.async = false;
    xmlDoc.load("mydvd.xml");
    alert(xmlDoc.documentElement.xml);
    root = xmlDoc.documentElement;
    newElem = xmlDoc.createElement("preparedby");
    root.childNodes.item(0).appendChild(newElem);
    root.childNodes.item(0).lastChild.text = "Yehuda Shiran";
    alert(xmlDoc.documentElement.xml);
  }
Try it now. The first alert box echoed the XML file before adding the element node. The second alert box reflects the addition. Notice the preparedby tag, the fourth and last child of the <summary> tag.


People who read this tip also read these tips:

Look for similar tips by subject:

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs

webref The latest from WebReference.com Browse >
Rolling Out Your Own HTML Application Version Control · HTML 5: Client-side Storage · Working with Ajax Server Extensions
Sitemap · Experts · Tools · Services · Email a Colleague · Contact FREE Newsletters 
 The latest from internet.com
Wi-Fi Product Watch, November 2009 · Chip Market Recovering From '08 Collapse · Low-Cost Tools to Kickstart Your New Business