getElementsByName和getElementById的区别、用法
来源:互联网 发布:unity3d 游戏关卡制作 编辑:程序博客网 时间:2024/06/05 20:16
http://hi.baidu.com/jingutian/blog/item/bf1a66dd74e12f315982dd81.html
首先需要注意的是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);
- getElementsByName和getElementById的区别、用法
- getElementsByName和getElementByID的区别
- getElementsByName和getElementById的区别
- getElementById getElementsByName getElementsByTagName 的用法与区别
- getElementById getElementsByName getElementsByTagName 的用法与区别
- getElementById getElementsByName的用法与区别
- getElementById、 getElementsByName 和getElementsByTagName的用法
- getelementbyid, getelementsbyname, getelementsbytagname 的区别和总结
- getElementByID getElementsByName getElementsByTagName的区别和总结
- getElementByID getElementsByName getElementsByTagName的区别和总结
- getElementByID getElementsByName getElementsByTagName的区别和总结
- document.getElementsByName和document.getElementById的区别
- getElementByID getElementsByName getElementsByTagName的区别和总结
- getElementByID getElementsByName getElementsByTagName的区别和总结
- getElementByID getElementsByName getElementsByTagName的区别和总结
- javascript中getElementsByName和getElementById的区别
- getElementById() , getElementsByName() 和 getElementsByTagName()的区别
- getElementById()、getElementsByName()和getElementsByTagName()的区别
- phpmyadmin无法导入大些文件 及使用配置文件中定义的控制用户连接失败。
- JQuery获取input type="text"中的值的各种方式
- JavaScript创建Applet 标签的属性介绍 以及 Applet调用JavaScript
- 将图片保存到SQL数据库中
- linux下安装中文输入法fcitx
- getElementsByName和getElementById的区别、用法
- 用ListBox作滚屏显示的一种方法
- C语言编程优化运行速度
- android平台上关于SQLite帮助类SQLiteOpenHelper 的使用
- 构造函数,析构函数,虚函数,内联函数,静态成员函数,重载,覆盖,隐藏
- make命令详解
- [面试官说] 面试时如何向公司提问?
- 各种天气预报接口代码
- 操作系统面试题总结