html里name和id的区别

name是用来提交表单数据,那id是拿来干嘛的

ID和Name都可以用来标识一个标记,Javascript分别有两个方法getElementById和getElementByName来定位Dom节点。
区别如下:
1、我们知道在网页做Post提交时,是以Form(即表单域)为单位进行提交的,一个Form里有若干个表单对象(如<input type="text" name="UserName" value="请输入姓名"/>),同一个页面里可以为多个Form(Asp.net不同,它只允许有一个,且名字必须为Form1),在表单表提交到服务器端后,可以直接通过Name属性取到表单域的值,却无法通过ID直接取到该表表单对象的值。
2、同一个Form里不能有多个name属性相同的HTML标记,但如果一个网页中有多个Form,则不同的Form里可以有同个Name属性的标记。而ID是全局的,在一个HTML文档里不能有多个节点使用相同的ID,无论它处在哪个Form里。
3、在建立CSS样式的时候,可以建立ID样式表(以#为前缀),使具有该ID的样式直接应用该样式,而无法建立Name样式表。
4、在进行网页编辑时建议使用ID来标识一个节点,而不是使用Name(除非是为了Post提交的需要),同样使用Javascript进行Dom节点定位时建议使用getElementById方法,因为只有ID能唯一标识一个节点,而同一个网页里可能会有多个Name属性相同的节点,它们分别处在不同的Form里。
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-08-01

    name与id的还有区别是:id要符合标识的要求,比如大小写敏感,最好不要包含下划线(因为不兼容CSS)。而name基本上没有什么要求,甚至可以用数字。

    <a name="myname"> 
    <div id="myid"> 
    <label for="MyInput">My Input</label> <input id="MyInput" type="text"> 

    HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。HTML的结构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体内容。

    name原来是为了标识之用,但是现在根据规范,都建议用id来标识元素。但是name在以下用途是不能替代的:

    1. 表单(form)的控件名,提交的数据都用控件的name而不是id来控制。因为有许多name会同时对应多个控件,比如checkbox和radio,而id必须是全文档中唯一的。此外浏览器会根据name来设定发送到服务器的request。因此如果用id,服务器是无法得到数据的。

    2. frame和window的名字,用于在其他frame或window指定target。

    以下两者可以通用,但是强烈建议用id不要用name:

    锚点,通常以前写作


    现在可以用任何的元素id来指定:


    以下只能用id:

    1. label与form控件的关联,


    for属性指定与label关联的元素的id,不可用name替代。

    2. CSS的元素选择机制,以#MyId的方式指定应用样式的元素,不能用name替代。

    3. 脚本中获得对象:

    IE支持在脚本中直接以id(而不是name)引用该id标识的对象。例如上面的input,要在脚本中获得输入的内容,可以直接以MyInput.value来获得。

    如果用DOM的话,则用document.getElementById("MyInput").value,如果要用name的话,通常先得到包含控件的form,例如document.forms[0],然后从form再引用name,注意这样得到的是经过计算后将发送给服务器的值。

第2个回答  推荐于2017-04-14
html的name和id可以类比身份证的姓名和身份证编号
编号id具有唯一性,一个id只出现一次。
名称name具备可重复性,可以多次出现。
在css中两者都具备识别html元素的作用,name用点号.表示,id用井号#
一般name用于通用多次出现元素的样式定义,id用于唯一性元素样式定义。

在表单当中,由于有些控件具备多元素特性,例如radio checkbox等,使用id不便于表单数据的提交,此外浏览器会根据name来设定发送到服务器的request,因此在表单当中,用name来提交数据。

当然,在实际的html中,也完全可以不用id,用单独的class也可以起到代替id的作用。但是在js中,是无法通过class直接后去html元素的, 定义id便于相关操作。

更多详情可参考百度文库
http://wenku.baidu.com/view/a3fcdc976bec0975f465e2c4.html本回答被提问者和网友采纳
第3个回答  2016-11-21
1、name指的是用户名称,ID指的是用户注册是系统自动分配给用户的一个序列号。 name是用来提交数据的,提供给表单用,可以重复;id则针对文档操作时候用,不能重复。如:document.getElementById();
2、ID是在客户端脚本里用!NAME是用于获取提交表单的某表单域信息,在form里面,如果不指定Name的话,就不会发送到服务器端。
第4个回答  2013-11-08
id 可以定义CSS样式,但最好只设置一个,因为脚本在查找DOM的时候只会返回第一个ID,如果要多个标签用同一样式,那就用class追问

那name呢

追答

name是提交表单时,后台处理的所提交数据的一个映射,比如的输入框中输入了123并提交,提交的表单中 test = 123, 懂不。

html里name和id的区别
html里name和id的区别:1、性质不同:id相当于编号,具有唯一性,只能出现一次;name相当于名称,具有可重复性,可以多次出现。2、符号标识不同:id用井号表示;name用点表示。3、用途不同:name用于多次出现元素的样式定义;id用于唯一性元素的样式定义。

html中id与name的区别
HTML 中 id与name 区别:一个name可以同时对应多个控件,比如checkbox和radio而id必须是全文档中唯一的id的用途 1) id是HTML元素的Identity,主要是在客户端脚本里用。2) label与form控件的关联,如 <label for="MyInput">My Input<\/label> <input id="MyInput" type="text"> for属性...

html 中 <a>标签里面的id 和 name 有什么区别
1、不同用途:名字是主要用于获取信息的表单字段提交表单,作为服务器端可以与服务器交互的HTML元素的标记数据,如输入、选择、文本区域、框架元件(iframe,框架,窗口名称,用于指定目标在其他框架或窗口),按钮等等。而id和class主要是通过css控制设置了id和class的元素的样式。2、用法不同:定义了id的元素在cs...

html里name和id的区别
2、同一个Form里不能有多个name属性相同的HTML标记,但如果一个网页中有多个Form,则不同的Form里可以有同个Name属性的标记。而ID是全局的,在一个HTML文档里不能有多个节点使用相同的ID,无论它处在哪个Form里。3、在建立CSS样式的时候,可以建立ID样式表(以#为前缀),使具有该ID的样式直接应用...

在HTML中的name和id的区别是什么?
name.中文是:姓名.那么.在一个系统中,name指的是一个代名词.就像一个人的名字一样.而ID.就像一个身份证号码.在html中:name指的是用户名称,ID指的是用户注册是系统自动分配给用户的一个序列号。 这样说你应该明白了些吧。

html name和id的区别
name与id的还有区别是:id要符合标识的要求,比如大小写敏感,最好不要包含下划线(因为不兼容CSS)。而name基本上没有什么要求,甚至可以用数字。<a name="myname"> <div id="myid"> <label for="MyInput">My Input<\/label> <input id="MyInput" type="text"> HTML文本是由HTML命令组成的...

HTML 中的name属性和id属性有什么区别?
HTML中name属性和ID属性区别主要有以下方面:一、name="txtPassword" 此元素的名称为txtPassword (在同一个html文档中,name可以有重复)二、id="pwd"此元素的唯一标识为pwd(在同一个html文档中,id不可以有重复)

HTML里name和ID各是什么意思?
html的name和id可以类比身份证的姓名和身份证编号 编号id具有唯一性,一个id只出现一次。名称name具备可重复性,可以多次出现。在css中两者都具备识别html元素的作用,name用点号.表示,id用井号 一般name用于通用多次出现元素的样式定义,id用于唯一性元素样式定义。在表单当中,由于有些控件具备多元素特性...

html 中 <a>标签里面的id 和 name 有什么区别
id的意思就是身份证,它是具有唯一性的,也就是说同一个网页的所有标签的id都不能有相同的;name就是名字,而名字是允许重复的。id的主要作用是供前端脚本(即js)获取网页元素对象的,由于它具有唯一性,因此使用比较简便;而name则用于后台脚本获取网页中表单所提交的数据,所以它一般用于表单控件(如...

HTML中id属性和name属性有什么区别
id与name的作用,作为标签的标识符,基本上是一样的。一个页面中id和name都可以重复。html是一种标记语言,其发展有一个过程(其中经历了好几个版本,最后由W3C定出版本),这里就不赘述了。在html发展的过程中,name首先在前面的版本出现,id在后面的版本出现,两者沿用至今。 近几年网站的开发,...

相似回答