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知识点收藏
Feb 22 Javascript
5个javascript的数字格式化函数分享
Dec 07 Javascript
js replace 与replaceall实例用法详解
Aug 03 Javascript
js取整数、取余数的方法
May 11 Javascript
AngularJS教程之简单应用程序示例
Aug 16 Javascript
JS 拼凑字符串的简单实例
Sep 02 Javascript
jquery实现刷新随机变化样式特效(tag标签样式)
Feb 03 Javascript
AngularJS基于factory创建自定义服务的方法详解
May 25 Javascript
基于VUE移动音乐WEBAPP跨域请求失败的解决方法
Jan 16 Javascript
利用adb shell和node.js实现抖音自动抢红包功能(推荐)
Feb 22 Javascript
VUE基于NUXT的SSR 服务端渲染
Nov 30 Javascript
vue点击自增和求和的实例代码
Nov 06 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
农民C键的运用技巧
2020/03/04 星际争霸
第九节--绑定
2006/11/16 PHP
php面向对象中的魔术方法中文说明
2014/03/04 PHP
教你如何快捷的使用cmd访问mysql小技巧
2014/05/26 PHP
PHP获取文件的MD5值并判断是否被修改的例子
2014/06/19 PHP
PHP生成word文档的三种实现方式
2016/11/14 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
Laravel+Intervention实现上传图片功能示例
2019/07/09 PHP
js 省地市级联选择
2010/02/07 Javascript
JS动态添加option和删除option(附实例代码)
2013/04/01 Javascript
js实现类似MSN提示的页面效果代码分享
2015/08/24 Javascript
Clipboard.js 无需Flash的JavaScript复制粘贴库
2015/10/02 Javascript
js实现索引图片切换效果
2015/11/21 Javascript
iOS和Android用同一个二维码实现跳转下载链接的方法
2016/09/28 Javascript
canvas实现爱心和彩虹雨效果
2017/03/09 Javascript
jQuery返回定位插件详解
2017/05/15 jQuery
详解vue过滤器在v2.0版本用法
2017/06/01 Javascript
Vue中v-for的数据分组实例
2018/03/07 Javascript
vue-socket.io接收不到数据问题的解决方法
2020/05/13 Javascript
Python面向对象编程中的类和对象学习教程
2015/03/30 Python
python中找出numpy array数组的最值及其索引方法
2018/04/17 Python
django页面跳转问题及注意事项
2019/07/18 Python
Django 拆分model和view的实现方法
2019/08/16 Python
Django模板语言 Tags使用详解
2019/09/09 Python
python rolling regression. 使用 Python 实现滚动回归操作
2020/06/08 Python
支持IE8的纯css3开发的响应式设计动画菜单教程
2014/11/05 HTML / CSS
英国打印机墨盒销售网站:Ink Factory
2019/10/07 全球购物
为什么说Ruby是一种真正的面向对象程序设计语言
2012/10/30 面试题
物业管理求职自荐信
2013/09/25 职场文书
物业管理应届生求职信
2013/10/28 职场文书
大学生家政服务项目创业计划书
2014/01/30 职场文书
会计电算化毕业生自荐信
2014/03/03 职场文书
心理健康活动总结
2014/04/30 职场文书
财务负责人任命书
2014/06/06 职场文书
工商局领导班子存在的问题整改措施思想汇报
2014/10/05 职场文书
2014年最新版离婚协议书范本
2014/11/25 职场文书