home HOME

XML DOM Tutorial
DOM HOME
DOM Introduction
DOM Nodes
DOM Node Tree
DOM Node Access
DOM Node Info
DOM Node List
DOM Parsing
DOM Traverse Nodes
DOM Mozilla vs IE
DOM Navigate Nodes

Manipulate Nodes
DOM Get Nodes
DOM Set Nodes
DOM Remove Nodes
DOM Replace Nodes
DOM Create Nodes
DOM Add Nodes
DOM Clone Nodes

XML DOM Reference
DOM Node Types
DOM Node
DOM NodeList
DOM NamedNodeMap
DOM Document
DOM DocumentImpl
DOM DocumentType
DOM ProcessingInstr
DOM Element
DOM Attribute
DOM Text
DOM CDATA
DOM Comment
DOM HttpRequest
DOM ParseError

DOM Summary

Examples
DOM Examples
DOM Validator

Selected Reading
Web Statistics
Web Glossary
Web Hosting
Web Quality

W3Schools Forum

Helping W3Schools

pixels

XML DOM Set Nodes

prev next

Examples

In the examples below, we will use the XML file books.xml, and the JavaScript function loadXMLDoc().

Set a new attribute and attribute value
This example uses setAttribute() to set a new attribute/attribute value.

Create a new attribute node
This example uses createAttribute() to create a new attribute node, and setAttributeNode() to insert it to an element.

Change an attribute's value
This example uses the setAttribute() method to change the value of an existing attribute.

Change an item's value
This example uses the getNamedItem() method to change the value of an existing attribute.


Set a New Attribute and Attribute Value

The setAttribute() method can be used to change the value of an existing attribute, or to create a new attribute/attribute value for an element.

The following code fragment adds a new attribute/attribute value to each <book> element:

xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("book");
for(i=0;i<x.length;i++)
  {
  x.item(i).setAttribute("edition","first");
  }


Another Way to Create a New Attribute

The createAttribute() is used to create a new attribute node.

The following code fragment uses createAttribute() to create a new attribute node, and setAttributeNode() to insert it to an element.:

xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName('book');
var newatt;
for (i=0;i<x.length;i++)
  {
  newatt=xmlDoc.createAttribute("edition");
  newatt.value="first";
  x[i].setAttributeNode(newatt);
  }


Change an Attribute Value

The setAttribute() method can be used to change the value of an existing attribute, or to create a new attribute/attribute value for an element.

The following code fragment changes the value of the existing "category" attribute (in each <book> element):

xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("book");
for(i=0;i<x.length;i++)
  {
  x.item(i).setAttribute("category","bestseller");
  }


Change an Item's Value

The getNamedItem() method can be used to change the value of an existing item.

The following code fragment also changes the value of the existing "category" attribute (in each <book> element):

xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("book");
for(i=0;i<x.length;i++)
  {
  var att=x.item(i).attributes.getNamedItem("category");
  att.value="bestseller";
  }


prev next

Jump to: Top of Page or HOME or Printer Friendly Printer friendly page

W3Schools provides material for training only. We do not warrant the correctness of its contents. The risk from using it lies entirely with the user. While using this site, you agree to have read and accepted our terms of use and privacy policy.

Copyright 1999-2007 by Refsnes Data. All Rights Reserved.

Validate Validate W3C-WAI level A conformance icon W3Schools was converted to XHTML in December 1999