document.all还是document.getElementsByName?


Posted in Javascript onJuly 21, 2006
(wuhen注:document.all是ie特有的属性,不是万维网标准) 当页面上的控件同名且多个的时候,你首先做的是什么?判断长度?的确,从程序的严密角度出发,我们是需要判断长度,而且有长度和没长度是两种引用方法.我们来看: 
oEle= document.all.aaa ;//这里有一个aaa的对象,但我们不知道它现在长度是多少,所以没办法对它操作.因此,我们要先做判断长度的过程.如下: 
if(oEle.length){}else{}; 
在两种情况下,花括号里面的内容写法也是不一样的: 
if(oEle.length){ 
   for(var i = 0 ;i<oEle.length;i++){ 
      oEle[i].value........ 
  } 
} 
else{ 
     oEle.value........ 
}; 
但是这样写是不是太复杂了点?而且当花括号里面的代码比较多的时候,我们要写两遍代码,晕了先~ 
还好有document.getElementsByName()这个方法.它对一个和多个的处理是一样的,我们可以用: 
oEle = document.getElementsByName('aaa')来引用 
当oEle只有1个的时候,那么就是oEle[0],有多个的时候,用下标法oEle[i]循环获取,是不是很简单? 
值得一提的是它对Name和ID的同样有效的. 
但是它只能应用到document对象.相对应的,还有另一个方法,可以应用的对象会更广一点: 
getElementsByTagName,比如我知道了一个<DIV ID='aaa'><input/><input/>......</DIV> 
我要取DIV里面的所有input,这样写就可以了:aaa.getElementsByTagName('INPUT'),这样就有效的可以和别的DIV(比如说有个叫bbb的DIV,里面的也是一样的input)相区别. 
同getElementsByTagName相对应,还有一个document.body.all.tags(),能用这个方法的对象比getElementsByTagName要小得多.但比getElementsByName要多. 
到这里我们还要提一下getElementById,它也是只有document对象才能使用,而且返回的是数组的第一个元素,呵呵,它的方法名都写明了是getElement而不是getElements,所以,千万不要搞浑了. 
好了,就到这里吧,休息,休息一会......
Javascript 相关文章推荐
JavaScript创建一个欢迎cookie弹出窗实现代码
Mar 15 Javascript
javascript实现json页面分页实例代码
Feb 20 Javascript
js判断当前页面用什么浏览器打开的方法
Jan 06 Javascript
JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
May 10 Javascript
js以分隔符分隔数组中的元素并转换为字符串的方法
Nov 16 Javascript
微信小程序 刷新上拉下拉不会断详细介绍
May 11 Javascript
node文件上传功能简易实现代码
Jun 16 Javascript
ECMAScript6变量的解构赋值实例详解
Sep 19 Javascript
微信小程序实现通过js操作wxml的wxss属性示例
Dec 06 Javascript
小程序实现列表多个批量倒计时
Jan 29 Javascript
JS事件绑定的常用方式实例总结
Mar 02 Javascript
vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)
Aug 17 Javascript
关于IFRAME 自适应高度的研究
Jul 20 #Javascript
怎么用javascript进行拖拽
Jul 20 #Javascript
繁简字转换功能
Jul 19 #Javascript
Javascript - HTML的request类
Jul 15 #Javascript
表单的一些基本用法与技巧
Jul 15 #Javascript
popdiv
Jul 14 #Javascript
游戏人文件夹程序 ver 4.03
Jul 14 #Javascript
You might like
优化PHP代码的53条建议
2008/03/27 PHP
php合并数组array_merge函数运算符加号与的区别
2008/10/31 PHP
php 显示指定路径下的图片
2009/10/29 PHP
通过php快速统计某个数据库中每张表的数据量
2012/09/04 PHP
php用正则表达式匹配URL的简单方法
2013/11/12 PHP
PHP curl 获取响应的状态码的方法
2014/01/13 PHP
Yii2前后台分离及migrate使用(七)
2016/05/04 PHP
Jquery replace 字符替换实现代码
2010/12/02 Javascript
javascript suggest效果 自动完成实现代码分享
2012/02/17 Javascript
S2SH整合JQuery+Ajax实现登录验证功能实现代码
2013/01/30 Javascript
使用js操作cookie的一点小收获分享
2013/09/03 Javascript
解析Javascript中难以理解的11个问题
2013/12/09 Javascript
js父页面与子页面不同时显示的方法
2014/10/16 Javascript
JS实现黑客帝国文字下落效果
2015/09/01 Javascript
JS将滑动门改为选项卡(需鼠标点击)的实现方法
2015/09/27 Javascript
js实现的简练高效拖拽功能示例
2016/12/21 Javascript
jQuery内容筛选选择器实例代码
2017/02/06 Javascript
关于jQuery库冲突的完美解决办法
2017/05/20 jQuery
JavaScript解决浮点数计算不准确问题的方法分析
2018/07/09 Javascript
element-ui 中的table的列隐藏问题解决
2018/08/24 Javascript
js实现点击图片在屏幕中间弹出放大效果
2019/09/11 Javascript
使用TS来编写express服务器的方法步骤
2020/10/29 Javascript
详解vue-router的导航钩子(导航守卫)
2020/11/02 Javascript
9种python web 程序的部署方式小结
2014/06/30 Python
python 实现对文件夹中的图像连续重命名方法
2018/10/25 Python
python 控制Asterisk AMI接口外呼电话的例子
2019/08/08 Python
丝绸和人造花卉、植物和树木:Nearly Natural
2018/11/28 全球购物
职工运动会邀请函
2014/01/19 职场文书
寄语十八大感言
2014/02/07 职场文书
法人授权委托书范本
2014/04/04 职场文书
医院信息公开实施方案
2014/05/09 职场文书
公司地址变更通知
2015/04/25 职场文书
企业战略合作意向书
2015/05/08 职场文书
小学大队干部竞选稿
2015/11/20 职场文书
党风廉洁教育心得体会
2016/01/20 职场文书
2016年小学优秀班主任事迹材料
2016/02/29 职场文书