document.getElementById详解

发布时间:2025-12-09 14:14:13 浏览次数:5

注意:

document.getElementById(” “) 得到的是一个对象,用 alert 显示得到的是

“ object ”,而不是具体的值,它有 value 和 length 等属性,加上 .value 得到的才

是具体的值!

参考资料:

1. document . getElementById 的用法和 DHTML.CHM 的下载地址

http://blog.sina.com.cn/u/4933092a010003k7

今天在网络上查找 document . getElementById 的用法,如下:

A : 语法:
oElement = document . getElementById ( sID )
参数:
sID : 必选项。字符串 (String) 。

返回值:
oElement : 对象 (Element) 。

说明:
根据指定的 id 属性值得到对象。返回 id 属性值等于 sID 的第一个对象的引用。假如对应的为一组对象 ,则返回该组对象中的第一个。
如果无符合条件的对象,则返回 null 。

B :有一个例子可以很好的说明:

****************************************************************************
* *
* 这个函数中最关键的地方是 document.getElementById ,他是什么呢? *
* *
* 关于 document.getElementById ,是这样的: *
* *
* 如: document.getElementById(‘hdrPageHeader_lblTitle’) *
* *
* 表示的意思是:获取 ID 为 :hdrPageHeader_lblTitle 的对象 *
* *
*<a id=”hdrPageHeader_lblTitle0″>aa</a> *
*<a id=”hdrPageHeader_lblTitle”>bb</a> *
*<a id=”hdrPageHeader_lblTitle1″>cc</a> *
*<script language=”javascript”> *
*<!– *
*var idtext=document.getElementById(‘hdrPageHeader_lblTitle’) *
*alert(idtext.innerText) *
*//–> *
*</script> *
* *
****************************************************************************

C :另外还得到一个细节:

http://bbs.cnitn.cn/dispbbs.asp?boardid=20&id=12957 ,内容是:

① document.getElementById 有时会抓 name 放过了 id ,据说是 IE 的一个 BUG ;
页面中有
<input type=”hidden” id=”hello8″ name=”category_id” value=”2″ />

<select id=”category_id” οnchange=”al();”>

一个是 name=”category_id” 一个是 id=”category_id”

用 document.getElementById 取第二个,可是,取到的却是第一个 name=category_id

在 IE 中 getElementById 竟然不是先抓 id 而是先找 name 相同的物件 …

兩個 form, 每個 form 有兩個 textbox, 兩個 form 中的 textbox 是相同的 name, 但 id 都不同 …
這樣在 Firefox 是沒問題的 … 但在 IE 卻只抓得到第一個出現的 name 資料

D :在得到答案后,同时也得到了两本好的手册工具,

1.DHTML.CHM —– 很全面的 DHTML 的参考手册

2.javascript 的参考手册

饮水思源,我还是不要把别人的成果直接放到这里,下面这个地址提供了下载连接:

http://www.xy72.com/bbs/dispbbs.asp?boardID=11&ID=71&page=1

2. document 对象

http://www.phpx.com/man/dhtmlcn/objects/obj_document.html

属性: title ; bgColor ; url; ( 使用: document.title)

方法:

focus

使得元素得到焦点并执行由 onfocus 事件指定的代码。

getElementById

获取对 ID 标签属性为指定值的第一个对象的引用。

getElementsByName

根据 NAME 标签属性的值获取对象的集合。

getElementsByTagName

获取基于指定元素名称的对象集合。

① document.getElementById 有时会抓name放过了id ,据说是IE的一个BUG;

http://community.csdn.net/Expert/topic/4223/4223888.xml?temp=.1947443

页面中有
<input type=”hidden” id=”hello8″ name=”category_id” value=”2″ />

<select id=”category_id” οnchange=”al();”>

一个是name=”category_id” 一个是id=”category_id”

用document.getElementById取第二个,可是,取到的却是第一个name=category_id

在IE中getElementById竟然不是先抓id而是先找name相同的物件…

兩個form,每個form有兩個textbox,兩個form中的textbox是相同的name,但id都不同…
這樣在Firefox是沒問題的…但在IE卻只抓得到第一個出現的name資料

下面这段代码可以验证这个结果







<HTML>


<HEAD>


<TITLE> getElementById </TITLE>


</HEAD>


<SCRIPT LANGUAGE=”JavaScript”>


<!–


function chkacc(){


alert(document.getElementById(“tbxuid1”).value);


alert(document.getElementById(“tbxpwd1”).value);


alert(document.getElementById(“tbxuid”).value);


alert(document.getElementById(“tbxpwd”).value);


}


//–>


</SCRIPT>


<BODY>


<FORM METHOD=POST ACTION=”” name=”frm1″>


<INPUT TYPE=”text” NAME=”tbxuid” id=”tbxuid1″>


<INPUT TYPE=”text” NAME=”tbxpwd” id=”tbxpwd1″>


</FORM>


<FORM METHOD=POST ACTION=”” name=”frm2″>


<INPUT TYPE=”text” NAME=”tbxuid” id=”tbxuid”>


<INPUT TYPE=”text” NAME=”tbxpwd” id=”tbxpwd”>


<INPUT TYPE=”button” value=”檢查” name=”btnchk” οnclick=”chkacc();”>


</FORM>


</BODY>


</HTML ② javascript中的getElementbyId使用

<!– –>

网页中的元素必须有id属性,才能通过这个方法得到,比如

<input type=text name=”content” id=”content”>

③获取html标记主要有两种方法,一种是通过ID值,一种是通过name属性

name属性主要用于form表单内的input标记

需要做网站?需要网络推广?欢迎咨询客户经理 13272073477