HTML中ID与NAME的区别

巴扎黑
发布: 2017-04-05 09:43:52
原创
1694 人浏览过

可以说几乎每个做过Web开发的人都问过,到底元素的ID和Name有什么区别阿?为什么有了ID还要有Name呢?而同样我们也可以得到最经典的答案:ID就像是一个人的身份证号码,而Name就像是他的名字,ID显然是唯一的,而Name是可以重复的。

上面一段对于ID和Name的解答说的太笼统了,以下我们来具体探讨一下。

一、name和id 都可以用来调用html中的元素

当我们需要在脚本里访问页面内一个html元素的时候,一般都是通过指定HTML元素的id或name

WEB标准下可以通过getElementById() 、getElementsByName() 、 getElementsByTagName()访问HTML文档中的任一个元素。

要访问某一特定元素尽量用标准的document.getElementById(id)。

如果一个文档中有两个以上的标签NAME相同,那么document.getElementsByName(name)就可以取得这些元素组成一个数组。

访问标签则用标准的document.getElementByTagName(tag)。

注意:id 标识的是大小写敏感的,而name基本上没有什么要求,甚至可以用数字。

二、什么情况下必须用name?

1、表单元素(例如:form、input、textarea、select 、button 等)通常与表单提交有关,在表单的接收页面只接收有name的元素,赋id的元素通过表单是接收不到值的。

2、表单元素复选框checkbox、单选按钮 radio 通常会对应多个控件,这时必须用name属性来实现分组。同一组使用同一个name。使两个题目的选项之间不产生干扰。

3、框架元素(iframe、frame)的名字,用于在其他iframe、frame指定target。

4、建立页面中的锚点,我们知道link是获得一个页面超级链接,如果不用href属性,而改用name,如:,我们就获得了一个页面锚点。

5、在IMG元素和MAP元素之间关联的时候,如果要定义IMG的热点区域,需要使用其属性usemap,使usemap="#name"(被关联的MAP元素的name)。

6、某些特定元素的属性,如attribute,meta和param。例如为Object定义参数或Meta中

三、什么情况下必须用id ?

1、label与form控件的关联。例如:

<label for="myInput">文本录入框</label>
<input id="myInput" type="text" />
登录后复制

2、id 可以用来设置一个css样式。例如:

<style type="text/css">
#my
{
      font-size: 12px;
      color: red;
}
</style>
<p id="my">设置字体大小和颜色</p>
登录后复制

               

以上是HTML中ID与NAME的区别的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板