spacer

Webref WebRef   Sitemap · Experts · Tools · Services · Newsletters · About i.com

home / experts / javascript / column102


Web Services, Part VII: XML Object's Nodes and Types

Developer News
Mandrake Linux Founder Back, Virtually
Amazon: We're a Technology Company
Sun Expands MySQL With Closed Source

Creating a New Node

The DOMDocument object exposes the createNode() method. You can use this method to create most of the dozen node types. You cannot create nodes of the following types:

The syntax of the method is as follows:

  createNode(type, name, namespaceURI)

where:

Let's look at an example. The following code creates an XML object from an external file:

  var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
  xmlDoc.async = false;

and then creates a new attribute node:

  MyNode = xmlDoc.createNode("attribute", "Year", "");

The node is an object. We need to link him to our mydvd tree. Let's add it to the root's first child node. The root of the tree is <sales>. Its first child node, (see the tree representation in Page 2 of our previous column), is <summary>. Let's code it. You usually start navigating the tree from the root. The root of the tree is:

  xmlDoc.documentElement;

The collection of the root's childNodes is:

  xmlDoc.documentElement.childNodes

The first item on this collection is the first child:

  xmlDoc.documentElement.childNodes.item(0)

The collection of attributes of this node (<sales>) is:

  xmlDoc.documentElement.childNodes.item(0).attributes

To insert the new node to this collection, you use the setNamedItem() method, with the new node object as a parameter:

  xmlDoc.documentElement.childNodes.item(0).attributes.setNamedItem(MyNode)

The addNode() function summarizes the above calls:

function addNode() {
  var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
  var MyNode;
  var namedNodeMap;
  xmlDoc.async = false;
  xmlDoc.load("mydvd.xml");
  alert(xmlDoc.documentElement.xml);
  MyNode = xmlDoc.createNode("attribute", "Year", "");
  namedNodeMap = xmlDoc.documentElement.childNodes.item(0).attributes;
  namedNodeMap.setNamedItem(MyNode);
  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 within the <summary> tag.


Next: How to create an element (tag) node

http://www.internet.com

internet.comearthweb.comDevx.commediabistro.comGraphics.com

Search:

Jupitermedia Corporation has two divisions: Jupiterimages and JupiterOnlineMedia

Jupitermedia Corporate Info

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

Whitepapers and eBooks

Intel Whitepaper: Comparing Two- and Four-Socket Platforms for Server Virtualization
IBM Solutions Brief: Go Green With IBM System xTM And Intel
HP eBook: Simplifying SQL Server Management
IBM Contest: Are You the Next Superstar? Join the "Search for the XML Superstar" Contest to Find Out
Microsoft PDF: Top 10 Reasons to Move to Server Virtualization with Hyper-V
Microsoft PDF: Six Reasons Why Microsoft's Hyper-V Will Overtake Vmware
Microsoft Step-by-Step Guide: Hyper-V and Failover Clustering
Intel PDF: Quad-Core Impacts More Than the Data Center
Intel PDF: Virtualization Delivers Data Center Efficiency
Go Parallel Article: PDC 2008 in Review
Microsoft PDF: Top 11 Reasons to Upgrade to Windows Server 2008
Avaya Article: Communication-Enabled Mashups: Empowering Both Business Owners and IT
Intel Whitepaper: Building a Real-World Model to Assess Virtualization Platforms
  PDF: Intel Centrino Duo Processor Technology with Intel Core2 Duo Processor
Microsoft Article: Build and Run Virtual Machines with Hyper-V Server 2008
Go Parallel Article: Q&A with a TBB Junkie
IBM Whitepaper: Innovative Collaboration to Advance Your Business
Internet.com eBook: Real Life Rails
IBM eBook: The Pros and Cons of Outsourcing
Internet.com eBook: Best Practices for Developing a Web Site
IBM CXO Whitepaper: The 2008 Global CEO Study "The Enterprise of the Future"
Avaya Article: Call Control XML in Action - A CCXML Auto Attendant
IBM CXO Whitepaper: Unlocking the DNA of the Adaptable Workforce--The Global Human Capital Study 2008
Adobe Acrobat Connect Pro: Web Conferencing and eLearning Whitepapers
HP eBook: Guide to Storage Networking
MORE WHITEPAPERS, EBOOKS, AND ARTICLES
webref The latest from WebReference.com Browse >
Popular JavaScript Framework Libraries: An Overview - Part 3 · Accessing Your MySQL Database from the Web with PHP · Working with the DOM Stylesheets Collection
Sitemap · Experts · Tools · Services · Email a Colleague · Contact FREE Newsletters 
 The latest from internet.com
Crucial Triples Up With New Three-Channel DDR3 Kits · Meet the Finalists: Excellence in Technology Awards · Tealeaf Offers Insight to Mobile Customer Behavior


Produced by Yehuda Shiran and Tomer Shiran
All Rights Reserved. Legal Notices.
Created: January 28, 2002
Revised: January 28, 2002

URL: http://www.webreference.com/js/column102/4.html