做过前端开发的过程中都问过,到底元素的ID
和Name
有什么区别? 为什么有了id
还要name
呢?
答案就是id
就像是一个人的身份证号码一样独一无二,而name
就是他的名字。
id
是唯一的,name
是可以重复的。
在前端开发过程中name
有很多种用途,和id
相辅相成,具体的作用如下:
1: 作为可与服务器交互数据的HTML元素的服务器端的标示,比如 input、select、textarea、和button等。我们可以在服务器端根据其Name通过Request.Params取得元素提交的值。
2:HTML元素Input type='radio'分组,我们知道radio button控件在同一个分组类,check操作是 mutex 的,同一时间只能选中一个radio,这个分组就是根据相同的Name属性来实现的。
3:建立页面中的锚点,我们知道<a href="URL">link</a>是获得一个页面超级链接,如果不用href属性,而改用Name,如:<a name="PageBottom"></a>,我们就获得了一个页面锚点。
4: 作为对象的Identity,如Applet、Object、Embed等元素。比如在Applet对象实例中,我们将使用其Name来引用该对象。
5:在IMG元素和MAP元素之间关联的时候,如果要定义IMG的热点区域,需要使用其属性usemap,使usemap="#name"(被关联的MAP元素的Name)。
6:某些特定元素的属性,如attribute,meta和param。例如为Object定义参数<PARAM NAME = "appletParameter" VALUE = "value">或Meta中<META NAME = "Author" CONTENT = "Dave Raggett">。