spacer
Yehuda Shiran February 8, 2002
Adding An Attribute 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 can add an attribute node to an XML tree with the createAttribute() method. The syntax of the method is:

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

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

  var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
  xmlDoc.async = false;
  xmlDoc.load("mydvd.xml");
Now, find the root of the tree and create the new attribute object:

  root = xmlDoc.documentElement;
  newAtt = xmlDoc.createAttribute("Year");
Create a collection of all of root's attributes and assign it to nameNodeMap:

  namedNodeMap = root.attributes;
Use the setNamedItem() method to set one of the attributes in this collection:

  namedNodeMap.setNamedItem(newAtt);
Let's summarize the above calls in one function:

  function addAttribute() {
    var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
    var root;
    var newAtt;
    var namedNodeMap;
    xmlDoc.async = false;
    xmlDoc.load("mydvd.xml");
    alert(xmlDoc.documentElement.xml);
    root = xmlDoc.documentElement;
    newAtt = xmlDoc.createAttribute("Year");
    namedNodeMap = root.attributes;
    namedNodeMap.setNamedItem(newAtt);
    alert(xmlDoc.documentElement.xml);
}
Try it now. The first alert box echoed the XML file before adding the attribute node. The second alert box reflects the addition. Notice the Year attribute in the <sales> 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