spacer
Yehuda Shiran March 25, 2000
DOM-Based Document Manipulation
Tips: March 2000

Yehuda Shiran, Ph.D.
Doc JavaScript

Developer News
News Flash: Adobe Has iPhone Workaround
Adobe's Flash 10.1 Goes Mobile (Minus iPhone)
A Salute to Visionary CEOs

The simplest way to modify a document is to change its DOM's properties and attributes. The Document Object Model includes two relevant properties you can use: data and nodeValue. These properties are only used to modify the content of text nodes. Both properties are set to the text node's value and are fully interchangeable. Here's an example:

<HTML>
<HEAD>
<TITLE> DOM Demo </TITLE>
</HEAD>
<BODY ID="bodyNode">This is the document body
<P ID = "p1Node">This is paragraph 1.</P>
<P ID = "p2Node">This is paragraph 2.</P>
<P ID = "p3Node">This is paragraph 3.
     <IMG ID = "imgNode" SRC="doc.gif">This text follows the image
     <TABLE ID="tableNode">
         <TR><TD BGCOLOR=yellow>This is row 1, cell 1</TD><TD BGCOLOR=orange>This is row 1, cell 2</TD></TR>
         <TR><TD BGCOLOR=red>This is row 2, cell 1</TD><TD BGCOLOR=magenta>This is row 2, cell 2</TD></TR>
         <TR><TD BGCOLOR=lightgreen>This is row 3, cell 1</TD><TD BGCOLOR=beige>This is row 3, cell 2</TD></TR>
     </TABLE>
</P>
<P ID = "p4Node">This is paragraph 4.</P>
</BODY>
</HTML>

Let's focus on the first text node, "This is the document body". This script displays the content of the data and nodeValue properties of the node. The content of these properties are identical and equal to the string content of the node, "This is the document body". We can change this string by modifying either one of these properties. Let's change the data property first, by assigning bodyNode.firstChild.data:

bodyNode.firstChild.data = "This is the new document body, set by the data property";

The same effect can be achieved by:

bodyNode.firstChild.nodeValue = "This is the new document body, set by the nodeValue property";

The HTML language lets you assign attributes to any element. However, some attributes carry certain semantics with them. The IMG's SRC attribute, for example, specifies the GIF file that the browser should display. The Document Object Model lets you modify such attributes, and thus manipulate the page. Let's change the GIF on the above page by modifying the p3Node.childNodes[1].src attribute:

p3Node.childNodes[1].src = "docjsad.gif";

Notice that all attributes are lowercase, regardless of their case in the corresponding HTML statement. For example, the SRC attribute of the IMG element above is in uppercase, while JavaScript requires lowercase attributes only.

Learn more about our DOM-based programming in Column 43, The Document Object Model (DOM), Part 4.


People who read this tip also read these tips:

Look for similar tips by subject:

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Reprints, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs

webref The latest from WebReference.com Browse >
Building a Banking Application Home Page with OOP · Mixing Scripting Languages · Review: phpFox, a Social Networking CMS with all the Bells and Whistles
Sitemap · Experts · Tools · Services · Email a Colleague · Contact FREE Newsletters 
 The latest from internet.com
Enterprise 2.0: Social Networking in the Cloud · BroadSoft Marketplace Hastens Pace of Telephony Innovation · Review: HTC Hero for Sprint