The nodeName, nodeValue, and nodeType properties contain information about nodes.
Node Properties
In the XML DOM, each node is an object.
Objects have methods and properties, that can be accessed and manipulated by JavaScript.
Three important node properties are:
- nodeName
- nodeValue
- nodeType
The nodeName Property
The nodeName property specifies the name of a node.
- nodeName is read-only
- nodeName of an element node is the same as the tag name
- nodeName of an attribute node is the attribute name
- nodeName of a text node is always #text
- nodeName of the document node is always #document
The nodeValue Property
The nodeValue property specifies the value of a node.
- nodeValue for element nodes is undefined
- nodeValue for text nodes is the text itself
- nodeValue for attribute nodes is the attribute value
Get the Value of an Element
The following code retrieves the text node value of the first <title> element:
Example
var x = xmlDoc.getElementsByTagName("title")[0].childNodes[0];
var txt = x.nodeValue;
Result: txt = "Everyday Italian"
Example explained:
- Suppose you have loaded "books.xml" into xmlDoc
- Get text node of the first <title> element node
- Set the txt variable to be the value of the text node
Change the Value of an Element
The following code changes the text node value of the first <title> element:
Example
var x = xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue = "Easy Cooking";
Example explained:
- Suppose you have loaded "books.xml" into xmlDoc
- Get text node of the first <title> element node
- Change the value of the text node to "Easy Cooking"
The nodeType Property
The nodeType property specifies the type of node.
nodeType is read only.
The most important node types are:
Node type | NodeType |
---|---|
Element | 1 |
Attribute | 2 |
Text | 3 |
Comment | 8 |
Document | 9 |