复选框输入元素中的“名称”属性的用途是啥?
Posted
技术标签:
【中文标题】复选框输入元素中的“名称”属性的用途是啥?【英文标题】:What is the purpose of the `name` attribute in a checkbox input element?复选框输入元素中的“名称”属性的用途是什么? 【发布时间】:2011-04-07 07:31:51 【问题描述】:我浏览了许多有关 Xhtml 中复选框输入的在线文档。谁能解开我的疑惑?这个name
字段实际上代表什么?
Milk: <input type="checkbox" name="checkbox" value="Milk">
Chocolate: <input type="checkbox" name="checkbox" value="chocolate">
Cold Drink: <input type="checkbox" name="checkbox" value="Cold Drink">
我认为它是特定复选框的标识符,以后只需引用它们的名称就可以在其他文件中使用它,但是鉴于所有复选框都具有相同的名称,为什么还要指定它呢?对此有点困惑。
【问题讨论】:
多个同名输入会发生什么情况:***.com/questions/452066/… 【参考方案1】:name 属性用于 引用表单数据后 提交,并参考数据 在客户端使用 javascript。
来源:http://reference.sitepoint.com/html/input/name
基本上,你所描述的。提交表单时,您可以通过您赋予它们的name
访问表单元素的值。
您希望多个input
s 具有相同name
的唯一地方是当它们是单选按钮时,在这种情况下,它用于指示其中哪一个属于同一组,因此只有一次可以选择其中一个。
【讨论】:
@Yi 这意味着,名称确实代表标识符,我可以在其他地方使用它来访问该复选框的值? @Nagaraj:是的,这基本上就是该属性的用途【参考方案2】:不要因为name="checkbox"
而感到困惑。更合乎逻辑的是name="drink"
和type=checkbox
。
在上述情况下,您有多个具有相同名称的复选框。当多个复选框具有相同名称时,表单会在请求中向服务器发送一组值。注意:只有选中的复选框的值会被发送到服务器。
理想情况下,这些用于允许多个选择题,其中允许多个答案。 与单选按钮相反,单选按钮在选项中只允许一个答案。
更新:
在接收端,例如,如果您使用 JSP - 所选复选框的值将在您的实际情况中以 request.getParameterValues("drink")
或 request.getParameterValues("checkbox")
的形式提供。这是使用name
属性的地方。
【讨论】:
所以现在如果我想使用特定的复选框值并且暂时忽略其他值,我使用名称属性作为标识符? @Nagaraj:是的,在我的更新中,您可以使用 name 获取所选复选框的 value(即牛奶、巧克力) 【参考方案3】:“名称”与数据库记录相同,每个字段都应该有一个名称,所以当你点击提交时,数据会记录到数据库中~~~~~
【讨论】:
以上是关于复选框输入元素中的“名称”属性的用途是啥?的主要内容,如果未能解决你的问题,请参考以下文章
将输入复选框的 DOM 属性更改反映到 innerHTML 属性
Excel VBA 2016 - 试图找到复选框的名称,无法获取值属性错误