19.9. Reading Text Nodes and Their Values
Problem
You want to extract the value from a text node.
Solution
Extract the text node
from
its parent using the firstChild property. Then get
the text node’s value using the
nodeValue property.
Discussion
In Recipe 19.4 we looked at text nodes
and how to create them in your XML objects. Now we want to look at
how to extract the value from a text node. You can use the
firstChild, lastChild,
nextSibling, previousSibling,
and childNodes properties discussed in Recipe 19.7 to get a reference to a text node
the same way you would get a reference to any other node (such as an
element). Then, once you have a reference to the text node, use the
nodeValue property to retrieve that
node’s text value.
An example will help illustrate. Let’s consider the following XML packet:
<book> <title>ActionScript Cookbook</title> </book>
In this XML packet, the root node is <book>,
which contains a child element, <title>. The
<title> element, in turn, contains a nested
node—a text node with a value of “ActionScript
Cookbook”.
If we parse this XML packet into an XML object,
we can get the root node by using the firstChild
property. Then we can get the <title>
element with the firstChild property of the root
node. And finally, we can get the text node with the
firstChild property of the
<title> element.
my_xml = new XML("<book><title>ActionScript Cookbook</title></book>");
// Extract the root node (<book>).
bookElement = my_xml.firstChild;
// Extract the <title> element. ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access