XML DOM Get Node Values
The nodeValue property is used to get the text value of a node.
The getAttribute() method returns the value of an attribute.
Get the Value of an Element
In the DOM, everything is a node. Element nodes does not have a text value.
The text of an element node is stored in a child node. This node is called a text node.
The way to get the text of an element, is to get the value of the child node (text node).
Get an Element Value
The getElementsByTagName() method returns a node list containing all elements with the specified tag name in the same order as they appear in the source document.
The following code loads "books.xml" into xmlDoc using
loadXMLDoc() and retrieves the first <title> element:
xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0]; |
The childNodes property returns a list of child nodes. The <title> element has only one child node. It is a text node.
The following code retrieves the text node of the <title> element:
x=xmlDoc.getElementsByTagName("title")[0];
y=x.childNodes[0]; |
The nodeValue property returns the text value of the text node:
Example
x=xmlDoc.getElementsByTagName("title")[0];
y=x.childNodes[0];
txt=y.nodeValue;
|
|
Result: txt = "Everyday Italian"
Loop through all <title> elements:
Try it yourself
Get the Value of an Attribute
In the DOM, attributes are nodes. Unlike element nodes, attribute nodes have text values.
The way to get the value of an attribute, is to get its text value.
This can be done using the getAttribute() method or using the nodeValue property of the attribute node.
Get an Attribute Value - getAttribute()
The getAttribute() method returns an attribute value.
The following code retrieves the text value of the "lang" attribute of the first
<title> element:
Example
xmlDoc=loadXMLDoc("books.xml");
txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");
|
|
Result: txt = "en"
Example explained:
- Load "books.xml"
into xmlDoc using loadXMLDoc()
- Set the txt variable to be the value of the "lang" attribute of the
first title element node
Loop through all <book> elements and get their "category" attributes:
Try
it yourself
Get an Attribute Value - getAttributeNode()
The getAttributeNode() method returns an attribute node.
The following code retrieves the text value of the "lang" attribute of the first
<title> element:
Example
xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].getAttributeNode("lang");
txt=x.nodeValue;
|
|
Result: txt = "en"
Example explained:
- Load "books.xml"
into xmlDoc using loadXMLDoc()
- Get the "lang" attribute node of the first <title> element node
- Set the txt variable to be the value of the attribute
Loop through all <book> elements and get their "category" attributes:
Try
it yourself

Need an easy way to get data into XML, or transform XML to another format?
MapForce lets you map XML data to/from any combination of XML, database, flat file, Excel 2007, XBRL, or Web services data.
Then it transforms data instantly or auto-generates royalty-free data integration code for recurrent conversions.
Download a free, fully functional 30-day trial to experience the following features:
- Easy-to-use, graphical data mapping interface
- Instant data transformation
- XSLT 1.0/2.0 and XQuery code generation
- Java, C#, and C++ code generation
- Advanced data processing functions
- Support for all major relational databases including SQL Server, IBM DB2, Oracle, and more
- Visual Studio & Eclipse integration
Download a fully-functional trial today!
|
|
|
|