联系站长 加入收藏 设为首页 繁體中文 RSS
  首页 | 生活百科 | 电脑网络 | 高手学堂 | 语录名言 | 读书文学 | 极品软件 | 奇趣图片 | 站长微博  
 您的位置: 精品百字节网 >> 高手学堂 >> 源码学堂 >> 正文 当前没有通告!
   □  getElementsByName和getElementById的区别    3星级
getElementsByName和getElementById的区别
[ 作者:作者不详     来源:互连网     点击数:     更新时间:2008-06-24     文章录入:Admin
【字体:
[内容提要]
getElementsByName和getElementById的区别、用法
首先需要注意的是getElementsByName而不是getElementByName,多一个s。
其次需要注意的是firefox浏览器下,如果用到getElementsByName必须设置id,比如
<input type=text id="test1" name="test1">

在ie下id可以不要,但firefox下如果没有id属性,就得不到正确的结果。
document.getElementsByName得到的是标签的数组。
document.getElementId得到的是某一个标签。

比如一个radio用getElementsByName和getElementById得到的结果是不一样的。
getElementById得到的是radio的第一个元素。
而getElementsByName得到的是radio的所有元素的数组。

而在比如
<input type="text" name="text1" value="test text"> 
<script> 
document.getElementsByName("text1").value 
document.getElementById("text1").value 
</script> 

document.getElementsByName("text1").value得到的是undefined(未定义)。
而 document.getElementById("text1").value得到的值是test text。

可见getElementsByName和getElementById的作用是不同的,我们不能把他们混为一谈。

getElementById的时候,会根据html元素的id属性,根据规范id应当是唯一的,用来标示一个element,比如<td>, < div> ......。所以返回唯一元素句柄或者null。对于表单控件<input><select>< textarea>等,在不指定id的时候,name也会被视作id,比如<input type="text" name= "abc" value="123">也可以用document.getElementById("abc")来获取

而getElementsByName从名字上看,就可以知道,它返回的是复数个对象。它根据name属性(name可以重复),得到所有name属性与参数相同的控件组成的数组,不存在时,返回0长度数组(.length == 0,而不是null)
比如
以下是引用片段:
<input type="text" name="abc" value="1"> 
<input type="text" name="abc" value="2"> 
<input type="text" name="abc" value="3"> 

var array = document.getElementsByName("abc"); 
if (array.length == 0) { 
alert("Error"); 
return; 


for (var i = 0; i < array.length; i++) { 
alert(array[i].value);
上一篇文章:WEB打印方案 下一篇文章:定时重启或关闭计算机的javascript源码
发表评论 □告诉好友 □打印此文 □收藏此页 □关闭窗口 □返回顶部
 最新热点文章
 kingcms批量替换Url目录格式思路
 添加删除Windows组件出错的解决方法
 IIS安装配置出现问题的解决办法
 ps中用钢笔画图锚点规律总绍
 Xp系统下如何架设网站站点?
 通过对页面进行压缩提高网站速度方案
 一些js代码,慢慢研究
 
 最新推荐文章
 添加删除Windows组件出错的解决方法
 IIS安装配置出现问题的解决办法
 ps中用钢笔画图锚点规律总绍
 Xp系统下如何架设网站站点?
 根据时段网站变换不同风格的代码
 EditPlus 代码段实用指南
 网站采集原型
 
 最新图文
  ◇  网友评论:(只显示最新5条。评论内容只代表网友观点,与本站立场无关!)
关于本站 | 免责申明 | 网站地图 | 联系站长 | 友情链接 | 与我同在
冀ICP备06032589号
  Copyright© 2006-2009 100byte.Com All Rights Reserved
网站声明:本网站是公益性质网站,部分内容来源于网络,如有侵犯您权利的地方,请与精品百字节站长联系,尽快修正.
Powered By CreateLive CMS 本站法律顾问:(冀港)武镇海律师
点击这里给我发消息