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操作文本框readOnly
May 15 Javascript
jquery CSS选择器笔记
Mar 29 Javascript
JQuery动态给table添加、删除行 改进版
Jan 19 Javascript
javascript之typeof、instanceof操作符使用探讨
May 19 Javascript
javascript调试之DOM断点调试法使用技巧分享
Apr 15 Javascript
原生javascript实现DIV拖拽并计算重复面积
Jan 02 Javascript
使用jQuery管理选择结果
Jan 20 Javascript
JS结合bootstrap实现基本的增删改查功能
Jul 22 Javascript
浅谈angularjs $http提交数据探索
Jan 20 Javascript
在Vue组件化中利用axios处理ajax请求的使用方法
Aug 25 Javascript
JS实现登录页密码的显示和隐藏功能
Dec 06 Javascript
基于Angularjs-router动态改变Title值的问题
Aug 30 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下常用正则表达式整理
2010/10/26 PHP
php字符串截取函数用法分析
2014/11/25 PHP
PHP的Yii框架的常用日志操作总结
2015/12/08 PHP
你所要知道JS(DHTML)中的一些技巧
2007/01/09 Javascript
JavaScript Event事件学习第一章 Event介绍
2010/02/07 Javascript
jquery实现显示已选用户
2014/07/21 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
从零学习node.js之mysql数据库的操作(五)
2017/02/24 Javascript
详解NODEJS的http实现
2018/01/04 NodeJs
jQuery第一次运行页面默认触发点击事件的实例
2018/01/10 jQuery
vuex的简单使用教程
2018/02/02 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
2020/09/16 Javascript
vue 中this.$set 动态绑定数据的案例讲解
2021/01/29 Vue.js
[01:34]2014DOTA2展望TI 剑指西雅图VG战队专访
2014/06/30 DOTA
[55:56]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.22
2019/09/05 DOTA
Python实现SMTP发送邮件详细教程
2021/03/02 Python
[原创]Python入门教程1. 基本运算【四则运算、变量、math模块等】
2018/10/28 Python
Python实现求两个数组交集的方法示例
2019/02/23 Python
利用python实现周期财务统计可视化
2019/08/25 Python
Python3实现zip分卷压缩过程解析
2019/10/09 Python
python绘制玫瑰的实现代码
2020/03/02 Python
Django+boostrap 美化admin后台的操作
2020/03/11 Python
python argparse传入布尔参数false不生效的解决
2020/04/20 Python
浅谈PyTorch中in-place operation的含义
2020/06/27 Python
基于OpenCV的网络实时视频流传输的实现
2020/11/15 Python
深入浅析css3 中display box使用方法
2015/11/25 HTML / CSS
英国时尚和家居用品零售商:Matalan
2021/02/28 全球购物
银行会计职员个人的自我评价
2013/09/29 职场文书
先进事迹报告会感言
2014/01/24 职场文书
中学教师自我鉴定
2014/02/07 职场文书
讲党性心得体会
2014/09/03 职场文书
走群众路线剖析材料
2014/10/09 职场文书
八年级英语教学计划
2015/01/23 职场文书
九九重阳节致辞
2015/07/31 职场文书
护士岗位竞聘书
2015/09/15 职场文书
创业计划书之服装
2019/10/07 职场文书