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 相关文章推荐
Use Word to Search for Files
Jun 15 Javascript
javascript 表格排序和表头浮动效果(扩展SortTable)
Apr 07 Javascript
用JS控制回车事件的代码
Feb 20 Javascript
js中的string.format函数代码
Aug 11 Javascript
jQuery简单实现banner图片切换
Jan 02 Javascript
js实现同一页面可多次调用的图片幻灯切换效果
Feb 28 Javascript
AngularJS基础 ng-class-odd 指令示例
Aug 01 Javascript
Query常用DIV操作获取和设置长度宽度的实现方法
Sep 19 Javascript
Angular和Vue双向数据绑定的实现原理(重点是vue的双向绑定)
Nov 22 Javascript
详解ES6语法之可迭代协议和迭代器协议
Jan 13 Javascript
Node.js命令行/批处理中如何更改Linux用户密码浅析
Jul 22 Javascript
微信小程序移动拖拽视图-movable-view实例详解
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 用sock技术发送邮件的函数
2007/07/21 PHP
PHP在特殊字符前加斜杠的实现代码
2011/07/17 PHP
用PHP实现Ftp用户的在线管理
2012/02/16 PHP
php实现仿写CodeIgniter的购物车类
2015/07/29 PHP
PHP代码维护,重构变困难的4种原因分析
2016/01/25 PHP
PHP实现的微信公众号扫码模拟登录功能示例
2019/05/30 PHP
js实现图片从左往右渐变切换效果的方法
2015/02/06 Javascript
jQuery操作动态生成的内容的方法
2016/05/28 Javascript
WebView启动支付宝客户端支付失败的问题小结
2017/01/11 Javascript
纯JS实现图片验证码功能并兼容IE6-8(推荐)
2017/04/19 Javascript
VueJS如何引入css或者less文件的一些坑
2017/04/25 Javascript
详解angularjs中的隔离作用域理解以及绑定策略
2017/05/31 Javascript
vue过渡和animate.css结合使用详解
2017/06/14 Javascript
jQuery EasyUI结合zTree树形结构制作web页面
2017/09/01 jQuery
javascript变量提升和闭包理解
2018/03/12 Javascript
如何基于viewport vm适配移动端页面
2020/11/13 Javascript
[04:09]2014DOTA2国际邀请赛Ti西雅图 历届冠军相继出局 BBC综述今日比赛
2014/07/20 DOTA
[02:22]《新闻直播间》2017年08月14日
2017/08/15 DOTA
Python中for循环和while循环的基本使用方法
2015/08/21 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
2018/01/04 Python
python正则表达式爬取猫眼电影top100
2018/02/24 Python
浅谈python正则的常用方法 覆盖范围70%以上
2018/03/14 Python
Python实现判断一行代码是否为注释的方法
2018/05/23 Python
Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】
2019/10/30 Python
用python中的matplotlib绘制方程图像代码
2019/11/21 Python
使用pandas库对csv文件进行筛选保存
2020/05/25 Python
pytorch SENet实现案例
2020/06/24 Python
python中scrapy处理项目数据的实例分析
2020/11/22 Python
使用django自带的user做外键的方法
2020/11/30 Python
印尼最大的婴儿用品购物网站:Orami
2017/09/28 全球购物
澳大利亚百货公司:David Jones
2018/02/08 全球购物
linux比较文件内容的命令是什么
2015/09/23 面试题
一份报关员的职业规划范文
2014/01/08 职场文书
党员自我剖析材料
2014/08/31 职场文书
社区党风廉政建设调研报告
2015/01/01 职场文书
礼貌问候语大全
2015/11/10 职场文书