當(dāng)頁面上的控件同名且多個(gè)的時(shí)候,你首先做的是什么?判斷長度?的確,從程序的嚴(yán)密角度出發(fā),我們是需要判斷長度,而且有長度和沒長度是兩種引用方法.我們來看:
oEle= document.all.aaa ;//這里有一個(gè)aaa的對(duì)象,但我們不知道它現(xiàn)在長度是多少,所以沒辦法對(duì)它操作.因此,我們要先做判斷長度的過程.如下:
if(oEle.length){}else{};
在兩種情況下,花括號(hào)里面的內(nèi)容寫法也是不一樣的:
if(oEle.length){
?? for(var i = 0 ;i<oEle.length;i++){
? ????oEle[i].value........
? }
}
else{
???? oEle.value........
};
但是這樣寫是不是太復(fù)雜了點(diǎn)?而且當(dāng)花括號(hào)里面的代碼比較多的時(shí)候,我們要寫兩遍代碼,暈了先~
還好有document.getElementsByName()這個(gè)方法.它對(duì)一個(gè)和多個(gè)的處理是一樣的,我們可以用:
oEle = document.getElementsByName('aaa')來引用
當(dāng)oEle只有1個(gè)的時(shí)候,那么就是oEle[0],有多個(gè)的時(shí)候,用下標(biāo)法oEle[i]循環(huán)獲取,是不是很簡(jiǎn)單?
值得一提的是它對(duì)Name和ID的同樣有效的.
但是它只能應(yīng)用到document對(duì)象.相對(duì)應(yīng)的,還有另一個(gè)方法,可以應(yīng)用的對(duì)象會(huì)更廣一點(diǎn):
getElementsByTagName,比如我知道了一個(gè)<DIV ID='aaa'><input/><input/>......</DIV>
我要取DIV里面的所有input,這樣寫就可以了:aaa.getElementsByTagName('INPUT'),這樣就有效的可以和別的DIV(比如說有個(gè)叫bbb的DIV,里面的也是一樣的input)相區(qū)別.
同getElementsByTagName相對(duì)應(yīng),還有一個(gè)document.body.all.tags(),能用這個(gè)方法的對(duì)象比getElementsByTagName要小得多.但比getElementsByName要多.
到這里我們還要提一下getElementById,它也是只有document對(duì)象才能使用,而且返回的是數(shù)組的第一個(gè)元素,呵呵,它的方法名都寫明了是getElement而不是getElements,所以,千萬不要搞渾了.
好了,就到這里吧,休息,休息一會(huì)......
FeedBack:
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
# re: document.getElementsByName()的用法
只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。 | ||
![]() |
||
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
|
||
相關(guān)文章:
|
||
| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
28 | 29 | 30 | 1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 | |||
12 | 13 | 14 | 15 | 16 | 17 | 18 | |||
19 | 20 | 21 | 22 | 23 | 24 | 25 | |||
26 | 27 | 28 | 29 | 30 | 31 | 1 | |||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
常用鏈接
留言簿(4)
隨筆分類(85)
隨筆檔案(89)
- 2009年8月 (1)
- 2008年7月 (1)
- 2007年11月 (1)
- 2007年8月 (1)
- 2007年7月 (2)
- 2007年6月 (1)
- 2007年2月 (5)
- 2007年1月 (1)
- 2006年12月 (1)
- 2006年11月 (1)
- 2006年10月 (11)
- 2006年9月 (28)
- 2006年8月 (9)
- 2006年7月 (12)
- 2006年6月 (3)
- 2006年5月 (1)
- 2006年4月 (3)
- 2006年3月 (4)
- 2006年2月 (3)
文章分類(14)
文章檔案(42)
- 2006年9月 (24)
- 2006年7月 (5)
- 2006年6月 (2)
- 2006年3月 (3)
- 2005年11月 (1)
- 2005年3月 (1)
- 2004年10月 (1)
- 2004年5月 (1)
- 2004年1月 (1)
- 2003年11月 (3)
收藏夾(37)
java
oracle
Sybase
搜索
積分與排名
- 積分 - 211050
- 排名 - 266
最新評(píng)論

- 1.?re: document.getElementsByName()的用法
- 455656
- --525233
- 2.?re: 討論:Java 接口當(dāng)中的 “常量接口”
- 評(píng)論內(nèi)容較長,點(diǎn)擊標(biāo)題查看
- --maaoi
- 3.?re: document.getElementsByName()的用法
- 謝謝,很明了
- --sf
- 4.?re: Ant:編寫build.xml的方法
- 學(xué)習(xí)了
- --sss
- 5.?re: Java 堆與棧的使用
-
你是個(gè)sb嗎?
- --zr