国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開發(fā) > JS > 正文

document.all還是document.getElementsByName?

2024-09-06 12:45:12
字體:
供稿:網(wǎng)友
代碼如下:
(wuhen注:document.all是ie特有的屬性,不是萬維網(wǎng)標(biāo)準(zhǔn))

當(dāng)頁(yè)面上的控件同名且多個(gè)的時(shí)候,你首先做的是什么?判斷長(zhǎng)度?的確,從程序的嚴(yán)密角度出發(fā),我們是需要判斷長(zhǎng)度,而且有長(zhǎng)度和沒長(zhǎng)度是兩種引用方法.我們來看:
oEle= document.all.aaa ;//這里有一個(gè)aaa的對(duì)象,但我們不知道它現(xiàn)在長(zhǎng)度是多少,所以沒辦法對(duì)它操作.因此,我們要先做判斷長(zhǎng)度的過程.如下:
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ì)......

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 全州县| 福鼎市| 贵港市| 龙游县| 湘西| 巩留县| 贵阳市| 永德县| 广东省| 石门县| 桐乡市| 镇平县| 新津县| 神农架林区| 罗定市| 屯昌县| 尼玛县| 西盟| 辽宁省| 秦皇岛市| 太仆寺旗| 双江| 延安市| 兴国县| 承德县| 垦利县| 宜兰市| 南城县| 金坛市| 南木林县| 虹口区| 襄城县| 成都市| 曲阜市| 金秀| 辰溪县| 逊克县| 拉孜县| 伊宁县| 定南县| 邵武市|