spacer

Webref WebRef   Sitemap · Experts · Tools · Services · Newsletters · About i.com

home / experts / javascript / column44


The Document Object Model (DOM), Part 5 (2)

Developer News
Eclipse Helios Update Brings New PHP Tools
Internet Explorer 9 Ups Standards Support
JBoss Portal 5 Release Easier to Use

The createElement Method

The createElement method creates a stand-alone element under the document object. This element is a single node that has neither children nor father, and is not related to any other existing document nodes. The only information attached to such a node is the HTML tag it represents, such as <P>, <FONT>, or <TABLE>. The HTML tag is the only parameter you need to specify when calling the createElement. To create a <FONT> tag element, for example, you would write:

newObject = document.createElement("FONT");

A classic exercise for demonstrating the createElement method is to create an HTML table. It is popular for several reasons. First, the table includes quite a few different HTML tags. Then, the TABLE construct is deeply nested (five levels of hierarchy). Last, there is a hidden tag in HTML tables that you need to create explicitly (TBODY). All other HTML constructs do not have hidden tags. We have explained this feature in length in Column 40. Here is a script that will create all the different tags needed by a table:

tableObj = document.createElement("TABLE");
tbodyObj = document.createElement("TBODY");
trObj = document.createElement("TR");
tdObj = document.createElement("TD");

Notice again that these four nodes (tableObj, tbodyObj, trObj, and tdObj) are similar to four satellites in space. There is no connection (yet) or any other relationship between them. We'll show you later in this column how to connect between them and how to add them to document trees. The following script creates the above four tag nodes:

<HTML>
<HEAD>
<TITLE> DOM Demo </TITLE>
</HEAD>
<BODY ID="bodyNode">
<SCRIPT LANGUAGE="JavaScript">
<!--
tableObj = document.createElement("TABLE");
tbodyObj = document.createElement("TBODY");
trObj = document.createElement("TR");
tdObj = document.createElement("TD");
 // -->
</SCRIPT>
</BODY>
</HTML>

Run this script and see that the top level node (bodyNode) does not have any children, and thus:

bodyNode.firstChild = undefined

Also notice from the Alert window that the return value from the createNode method is the new object itself.

http://www.internet.com

Produced by Yehuda Shiran and Tomer Shiran

webref The latest from WebReference.com Browse >
Flashmaps' DynamicLocator: Interactive Maps for Small Areas · Flashmaps' AreaSelector: Interactive Maps for Wide Areas · The DB Mapper: Interactive Street-level Maps of U.S. and Canada
Sitemap · Experts · Tools · Services · Email a Colleague · Contact FREE Newsletters 
 The latest from internet.com
MS Access and MySQL · Cisco AutoQoS: VoIP QoS for Mere Mortals · While VoIP Adoption Explodes in Enterprise, Carrier Spending Lags


Created: July 19, 1999
Revised: July 19, 1999

URL: http://www.webreference.com/js/column44/createtag.html