未选中的复选框

时间:2012-07-27 16:07:29

标签: php javascript html

我有一个网页表单,里面有一个复选框。表单是动态创建的,因此此表单上可能有多个复选框。我需要知道它是否被检查。问题是未经检查的复选框POST什么都没有。

我知道之前已经问过这个问题,但解决办法始终是提供一个带有值的隐藏字段。我遇到的问题是我需要知道它是否被检出,不一定是值。有没有办法让这种情况发生?我以为我需要使用一些javascript,但不确定如何去做。

2 个答案:

答案 0 :(得分:3)

您可以使用相同的名称创建隐藏输入,但值为"off"。确保它位于文档中的复选框之前。例如:

<input type="hidden" name="something" value="off" />
<input type="checkbox" name="something" />

这将提交以下内容:

// if the box is unchecked:
something=off
// if the box is checked:
something=off&something=on

由于重复的名称会导致覆盖之前的值(数组除外),因此{@ 1}}(已选中)或$_POST['something'](未选中)将始终显示"on"

答案 1 :(得分:0)

您需要检查是否设置了$_POST索引

if (isset($_POST['myCheckBox'])) { ... }