2010-09-02 89 views
11

我浏览了XHTML中的复选框输入的许多在线文档。任何人都可以清除我的疑问这个name字段实际上代表什么?复选框输入元素中`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"> 

我认为这是特定的复选框,可后来在其他文件通过单指其名称中使用的标识符,但考虑到所有的复选框有相同的名字,为什么还要指定呢?对此有点困惑。

+0

与多个输入会发生什么同名:http://stackoverflow.com/questions/452066/html-form-with-multiple-hidden-control-elements-of-the-same-name – 2016-05-31 21:48:30

回答

19

不要因为name="checkbox"而感到困惑。从逻辑上讲,这可能是name="drink"type=checkbox

在上述情况下,您有多个同名的复选框。当多个复选框具有相同的名称时,表单将在请求中向服务器发送一组值。注意:只有复选框的值将被发送到服务器。

理想情况下,这些用于允许多个选项问题,其中允许多个答案。 与单选按钮相反,在选项中只允许有一个答案。

更新:

在接收端,如果你使用JSP例如 - 选择复选框的值将作为request.getParameterValues("drink")request.getParameterValues("checkbox")在您的实际情况。这是使用name属性的地方。

+0

所以现在如果我想使用特定的复选框的值和时间忽视其他人,我使用名称属性作为标识符? – 2010-09-02 12:15:03

+0

@Nagaraj:是的,在我的更新中,您可以使用*名称获得所选复选框的*值*(即牛奶,巧克力) – JoseK 2010-09-02 12:20:28

4

名称属性用于 参照表格数据它 提交之后,并引用在客户端使用JavaScript数据 。

来源:http://reference.sitepoint.com/html/input/name

基本上,你所描述的东西。表单提交后,您可以通过name来获取表单元素的值。

唯一的地方,你会希望有多个input s与name是当他们是单选按钮,在这种情况下,它是用来表示哪一个属于同一组,因此只有一个可以一次选择。

+0

@Yi这意味着,名称代表标识符,我可以使用其他地方为了访问该复选框的值? – 2010-09-02 12:12:19

+0

@Nagaraj:是的,这基本上是什么属性是 – 2010-09-02 12:13:45

-1

“名称”一样的是DATABSE纪录,每场应该有一个名字,所以当你点击提交,数据将记录到数据库中~~~~~

相关问题