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 相关文章推荐
js表格分页实现代码
Sep 18 Javascript
从面试题学习Javascript 面向对象(创建对象)
Mar 30 Javascript
jquery 实现两Select 标签项互调示例代码
Sep 25 Javascript
jQuery中eq()方法用法实例
Jan 05 Javascript
Windows下用PyCharm和Visual Studio开始Python编程
Oct 26 Javascript
基于jQuery Ajax实现上传文件
Mar 24 Javascript
15款最好的Bootstrap在线编辑器
Aug 03 Javascript
微信小程序实现多选删除列表数据功能示例
Jan 15 Javascript
微信小程序登录对接Django后端实现JWT方式验证登录详解
Jul 29 Javascript
如何解决日期函数new Date()浏览器兼容性问题
Sep 11 Javascript
vue3 源码解读之 time slicing的使用方法
Oct 31 Javascript
vue或react项目生产环境去掉console.log的操作
Sep 02 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
eWebEditor v3.8 商业完整版 (PHP)
2006/12/06 PHP
Ha0k 0.3 PHP 网页木马修改版
2009/10/11 PHP
window+nginx+php环境配置 附配置搭配说明
2010/12/29 PHP
ThinkPHP 404页面的设置方法
2015/01/14 PHP
php发送与接收流文件的方法
2015/02/11 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
jQuery与ExtJS之选择实例分析
2010/08/19 Javascript
一些javascript一些题目的解析
2010/12/25 Javascript
javascript 在firebug调试时用console.log的方法
2012/05/10 Javascript
jquery缓动swing liner控制动画过程不同时刻的速度
2014/05/29 Javascript
node.js入门教程
2014/06/01 Javascript
基于BootStrap Metronic开发框架经验小结【八】框架功能总体界面介绍
2016/05/12 Javascript
jQuery中deferred对象使用方法详解
2016/07/14 Javascript
AngularJS基础 ng-non-bindable 指令详细介绍
2016/08/02 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
2016/12/13 Javascript
完美解决spring websocket自动断开连接再创建引发的问题
2017/03/02 Javascript
vue子父组件通信的实现代码
2017/07/09 Javascript
详解jQuery中关于Ajax的几个常用的函数
2017/07/17 jQuery
JS与HTML结合实现流程进度展示条思路详解
2017/09/03 Javascript
React Native验证码倒计时工具类分享
2017/10/24 Javascript
浅谈angular4.0中路由传递参数、获取参数最nice的写法
2018/03/12 Javascript
Vue 权限控制的两种方法(路由验证)
2019/08/16 Javascript
python使用socket进行简单网络连接的方法
2015/04/29 Python
详解python配置虚拟环境
2019/04/08 Python
TensorFlow实现保存训练模型为pd文件并恢复
2020/02/06 Python
浅谈python元素如何去重,去重后如何保持原来元素的顺序不变
2020/02/28 Python
DataFrame 数据合并实现(merge,join,concat)
2020/06/14 Python
中海讯通笔试题
2015/09/15 面试题
总经理秘书的岗位职责
2013/12/27 职场文书
家长会学生家长演讲稿
2013/12/29 职场文书
关于逃课的检讨书
2014/01/23 职场文书
会计专业求职信范文
2014/03/16 职场文书
水利专业大学生职业生涯规划书范文
2014/09/17 职场文书
县政府领导班子“四风”方面突出问题整改措施
2014/09/23 职场文书
党员领导干部民主生活会批评与自我批评发言
2014/09/28 职场文书
2016应届大学生自荐信模板
2016/01/28 职场文书