Tutorials References Menu

XML Tutorial

XML HOME XML Introduction XML How to use XML Tree XML Syntax XML Elements XML Attributes XML Namespaces XML Display XML HttpRequest XML Parser XML DOM XML XPath XML XSLT XML XQuery XML XLink XML Validator XML DTD XML Schema XML Server XML Examples

XML AJAX

AJAX Introduction AJAX XMLHttp AJAX Request AJAX Response AJAX XML File AJAX PHP AJAX ASP AJAX Database AJAX Applications AJAX Examples

XML DOM

DOM Introduction DOM Nodes DOM Accessing DOM Node Info DOM Node List DOM Traversing DOM Navigating DOM Get Values DOM Change Nodes DOM Remove Nodes DOM Replace Nodes DOM Create Nodes DOM Add Nodes DOM Clone Nodes DOM Examples

XPath Tutorial

XPath Introduction XPath Nodes XPath Syntax XPath Axes XPath Operators XPath Examples

XSLT Tutorial

XSLT Introduction XSL Languages XSLT Transform XSLT <template> XSLT <value-of> XSLT <for-each> XSLT <sort> XSLT <if> XSLT <choose> XSLT Apply XSLT on the Client XSLT on the Server XSLT Edit XML XSLT Examples

XQuery Tutorial

XQuery Introduction XQuery Example XQuery FLWOR XQuery HTML XQuery Terms XQuery Syntax XQuery Add XQuery Select XQuery Functions

XML DTD

DTD Introduction DTD Building Blocks DTD Elements DTD Attributes DTD Elements vs Attr DTD Entities DTD Examples

XSD Schema

XSD Introduction XSD How To XSD <schema> XSD Elements XSD Attributes XSD Restrictions

XSD Complex

XSD Elements XSD Empty XSD Elements Only XSD Text Only XSD Mixed XSD Indicators XSD <any> XSD <anyAttribute> XSD Substitution XSD Example

XSD Data

XSD String XSD Date XSD Numeric XSD Misc XSD Reference

Web Services

XML Services XML WSDL XML SOAP XML RDF XML RSS

References

DOM Node Types DOM Node DOM NodeList DOM NamedNodeMap DOM Document DOM Element DOM Attribute DOM Text DOM CDATA DOM Comment DOM XMLHttpRequest DOM Parser XSLT Elements XSLT/XPath Functions

XML DOM Change Node Values


The nodeValue property is used to change a node value.

The setAttribute() method is used to change an attribute value.


Try it Yourself - Examples

The examples below use the XML file books.xml.

Change an element's text node
This example uses the nodeValue property to change the text node of the first <title> element in "books.xml".

Change an attribute's value using setAttribute
This example uses the setAttribute() method to change the value of the "category" attribute of the first <book>.

Change an attribute's value using nodeValue
This example use the nodeValue property to change the value of the "category" attribute of the first <book>.

×

Header


Change the Value of an Element

In the DOM, everything is a node. Element nodes do not have a text value.

The text value of an element node is stored in a child node. This node is called a text node.

To change the text value of an element, you must change the value of the elements's text node.


Change the Value of a Text Node

The nodeValue property can be used to change the value of a text node.

Suppose "books.xml" has been loaded into xmlDoc.

This code changes the text node value of the first <title> element:

Example

xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "new content"
Try it Yourself »

Example explained:

  1. Suppose "books.xml" is loaded into xmlDoc
  2. Get the first child node of the <title> element
  3. Change the node value to "new content"

Loop through and change the text node of all <title> elements: Try it yourself



Change the Value of an Attribute

In the DOM, attributes are nodes. Unlike element nodes, attribute nodes have text values.

The way to change the value of an attribute, is to change its text value.

This can be done using the setAttribute() method or setting the nodeValue property of the attribute node.


Change an Attribute Using setAttribute()

The setAttribute() method changes the value of an attribute.

If the attribute does not exist, a new attribute is created.

This code changes the category attribute of the <book> element:

Example

xmlDoc.getElementsByTagName("book")[0].setAttribute("category","food");
Try it Yourself »

Example explained:

  1. Suppose "books.xml" is loaded into xmlDoc
  2. Get the first <book> element
  3. Change the "category" attribute value to "food"

Loop through all <title> elements and add a new attribute: Try it yourself

Note: If the attribute does not exist, a new attribute is created (with the name and value specified).


Change an Attribute Using nodeValue

The nodeValue property is the value of a attribute node.

Changing the value property changes the value of the attribute.

Example

xmlDoc.getElementsByTagName("book")[0].getAttributeNode("category").nodeValue = "food";
Try it Yourself »

Example explained:

  1. Suppose "books.xml" is loaded into xmlDoc
  2. Get the "category" attribute of the first <book> element
  3. Change the attribute node value to "food"