spacer
Yehuda Shiran February 8, 2002
Adding An Attribute to An XML Tree
Tips: February 2002

Yehuda Shiran, Ph.D.
Doc JavaScript

Developer News
News Flash: Adobe Has iPhone Workaround
Adobe's Flash 10.1 Goes Mobile (Minus iPhone)
A Salute to Visionary CEOs

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, Reprints, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs

webref The latest from WebReference.com Browse >
Building a Banking Application Home Page with OOP · Mixing Scripting Languages · Review: phpFox, a Social Networking CMS with all the Bells and Whistles
Sitemap · Experts · Tools · Services · Email a Colleague · Contact FREE Newsletters 
 The latest from internet.com
Enterprise 2.0: Social Networking in the Cloud · BroadSoft Marketplace Hastens Pace of Telephony Innovation · Review: HTC Hero for Sprint