input框中的name和id的区别


Posted in Javascript onNovember 16, 2016

1.

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

上周我也遇到了ID和Name的问题,在页面里输入了一个input type="hidden",只写了一个ID='SliceInfo',赋值后submit,在后台用Request.Params["SliceInfo"]却怎么也去不到值。后来恍然大悟因该用Name来标示,于是在input里加了个Name='SliceInfo',就一切ok了。

第一段里对于ID和Name的解答说的太笼统了,当然那个解释对于ID来说是完全对的,它就是Client端HTML元素的Identity。而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">。

显然这些用途都不是能简单的使用ID来代替掉的,所以HTML元素的ID和Name的却别并不是身份证号码和姓名这样的区别,它们更本就是不同作用的东西。

表单元素(form input textarea select)与框架元素(iframe frame)用 name

这些元素都与表单(框架元素作用于form的target)提交有关, 在表单的接收页面只接收有name的元素, 赋ID的元素通过表单是接收不到值的, 你自己可以验证一下.

有一个例外: A 可以赋 name 作为锚点, 也可以赋ID。

2.

id要符合标识的要求,比如大小写敏感,最好不要包含下划线(因为不兼容CSS)。而name基本上没有什么要求,甚至可以用数字。ID就像是一个人的身份证号码,而Name就像是他的名字,ID显然是唯一的,而Name是可以重复的。

<input> 标签规定用户可输入数据的输入字段。

根据不同的 type 属性,输入字段有多种形态。输入字段可以是文本字段、复选框、密码字段、单选按钮、按钮等等。
id:作为标签的唯一标识。

name:作为可与服务器交互数据的HTML元素的服务器端的标示。

3.

ID 是 以 #定义的CSS样式

也可以用JS获取来控制 getElementById(这里是ID) 来获取

name 很多了,就是给当前标签或元素指定名称,也可以用JS来控制值,form提交后获取的时候就需要获取name名称。

4.

id 一般用于css和js中引用,name用于表单提交,只有加了name属性的标签元素才会提交到服务器。

以上所述是小编给大家介绍的input框中的name和id的区别,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jquery获取input表单值的代码
Apr 19 Javascript
Javascript异步编程模型Promise模式详细介绍
May 08 Javascript
jquery取子节点及当前节点属性值的方法
Sep 09 Javascript
JavaScript中setMonth()方法的使用详解
Jun 11 Javascript
javascript实现状态栏中文字动态显示的方法
Oct 20 Javascript
给angular加上动画效遇到的问题总结
Feb 17 Javascript
JS实现的模仿QQ头像资料卡显示与隐藏效果
Apr 07 Javascript
ES6生成器用法实例分析
Apr 10 Javascript
微信小程序 实例开发总结
Apr 26 Javascript
angular 基于ng-messages的表单验证实例
May 04 Javascript
微信小程序之网络请求简单封装实例详解
Jun 28 Javascript
JavaScript 隐性类型转换步骤浅析
Mar 15 Javascript
微信小程序 页面传参实例详解
Nov 16 #Javascript
JS中关于事件处理函数名后面是否带括号的问题
Nov 16 #Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
Nov 16 #Javascript
jQuery实现的购物车物品数量加减功能代码
Nov 16 #Javascript
使用JavaScript获取URL中的参数(两种方法)
Nov 16 #Javascript
微信小程序 保留小数(toFixed)详细介绍
Nov 16 #Javascript
微信小程序 获取相册照片实例详解
Nov 16 #Javascript
You might like
Protoss热键控制
2020/03/14 星际争霸
PHP得到mssql的存储过程的输出参数功能实现
2012/11/23 PHP
标准版Eclipse搭建PHP环境的详细步骤
2015/11/18 PHP
学习PHP的数组总结【经验】
2016/05/05 PHP
laravel-admin 管理平台获取当前登陆用户信息的例子
2019/10/08 PHP
客户端 使用XML DOM加载json数据的方法
2010/09/28 Javascript
js判断一个元素是否为另一个元素的子元素的代码
2012/03/21 Javascript
javascript ready和load事件的区别示例介绍
2013/08/30 Javascript
JS 数字转换研究总结
2013/12/26 Javascript
js创建对象的区别示例介绍
2014/07/24 Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
2016/11/16 Javascript
Bootstrap媒体对象学习使用
2017/03/07 Javascript
iscroll动态加载数据完美解决方法
2017/07/18 Javascript
ES6中数组array新增方法实例总结
2017/11/07 Javascript
微信小程序实现多宫格抽奖活动
2020/04/15 Javascript
详解javascript 正则表达式之分组与前瞻匹配
2018/05/30 Javascript
浅谈从React渲染流程分析Diff算法
2018/09/08 Javascript
Nuxt.js实战和配置详解
2019/08/05 Javascript
小程序分享链接onShareAppMessage的具体用法
2020/05/22 Javascript
JavaScript字符和ASCII实现互相转换
2020/06/03 Javascript
[01:18:36]LGD vs VP Supermajor 败者组决赛 BO3 第一场 6.10
2018/07/04 DOTA
Python基础教程之浅拷贝和深拷贝实例详解
2017/07/15 Python
python入门之基础语法学习笔记
2020/02/08 Python
python+adb命令实现自动刷视频脚本案例
2020/04/23 Python
Python进行统计建模
2020/08/10 Python
css sprite简单实例
2016/05/23 HTML / CSS
canvas 基础之图像处理的使用
2020/04/10 HTML / CSS
如何将一个描述日期或日期/时间的字符串转换为一个Date对象
2015/10/13 面试题
建筑公司员工自我鉴定
2014/04/08 职场文书
《果园机器人》教学反思
2014/04/13 职场文书
护林防火标语
2014/06/27 职场文书
亲子运动会的活动方案
2014/08/17 职场文书
邓小平理论心得体会
2014/09/09 职场文书
公务员群众路线心得体会
2014/11/03 职场文书
Docker官方工具docker-registry案例演示
2022/04/13 Servers
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android