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 相关文章推荐
十分钟打造AutoComplete自动完成效果代码
Dec 26 Javascript
用js实现小球的自由移动代码
Apr 22 Javascript
JavaScript限定复选框的选择个数示例代码
Aug 25 Javascript
以JavaScript来实现WordPress中的二级导航菜单的方法
Dec 14 Javascript
JS拖拽组件学习使用
Jan 19 Javascript
Javascript实现汉字和拼音互转的终极方案
Oct 19 Javascript
手动初始化Angular的模块与控制器
Dec 26 Javascript
微信小程序 websocket 实现SpringMVC+Spring+Mybatis
Aug 04 Javascript
ReactNative实现Toast的示例
Dec 31 Javascript
Vue框架下引入ActiveX控件的问题解决
Mar 25 Javascript
JavaScript canvas实现雪花随机动态飘落
Feb 08 Javascript
vue微信分享插件使用方法详解
Feb 18 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
实用的PHP带公钥加密类分享(每次加密结果都不一样哦)
2014/08/20 PHP
PHP之sprintf函数用法详解
2014/11/12 PHP
thinkphp框架实现删除和批量删除
2016/06/29 PHP
PHP单元测试配置与使用方法详解
2019/12/27 PHP
javascript优先加载笔记代码
2008/09/30 Javascript
JQuery实现的在新窗口打开链接的方法小结
2010/04/22 Javascript
jQuery on()方法绑定动态元素的点击事件无响应的解决办法
2016/07/07 Javascript
不间断循环滚动效果的实例代码(必看篇)
2016/10/08 Javascript
利用js的闭包原理做对象封装及调用方法
2017/04/07 Javascript
深入理解Vuex 模块化(module)
2017/09/26 Javascript
Bootstrap 模态框多次显示后台提交多次BUG的解决方法
2017/12/26 Javascript
nodejs中Express与Koa2对比分析
2018/02/06 NodeJs
Angular 封装并发布组件的方法示例
2018/04/19 Javascript
vue 注册组件的使用详解
2018/05/05 Javascript
JS中Promise函数then的奥秘探究
2018/07/30 Javascript
微信网页授权并获取用户信息的方法
2018/07/30 Javascript
layui实现图片虚拟路径上传,预览和删除的例子
2019/09/25 Javascript
JS实现拼图游戏
2021/01/29 Javascript
vue 自定指令生成uuid滚动监听达到tab表格吸顶效果的代码
2020/09/16 Javascript
基于jQuery拖拽事件的封装
2020/11/29 jQuery
Python的ORM框架中SQLAlchemy库的查询操作的教程
2015/04/25 Python
Python解决pip install时出现的Could not fetch URL问题
2019/08/01 Python
Python运行异常管理解决方案
2020/03/09 Python
python自动脚本的pyautogui入门学习
2020/04/01 Python
Python Mock模块原理及使用方法详解
2020/07/07 Python
基于 HTML5 WebGL 实现的垃圾分类系统
2019/10/08 HTML / CSS
阿玛瑞酒店中文官方网站:Amari.com
2018/02/13 全球购物
荷兰网上药店:Drogisterij.net
2019/09/03 全球购物
怎样声明一个匿名的内部类
2016/06/01 面试题
工作自荐信
2013/12/11 职场文书
房地产财务部员工岗位职责
2014/03/12 职场文书
信电学院毕业生自荐书
2014/05/24 职场文书
财务经理岗位职责
2015/01/31 职场文书
垂直极限观后感
2015/06/08 职场文书
Spring实现内置监听器
2021/07/09 Java/Android
nginx搭建NFS网络文件系统
2022/04/14 Servers