0

我在网页上有一些复选框,例如:

<input type="checkbox"<?php echo $checked; ?> name="stuff[]" value="First" />

where$checked要么是空字符串,要么checked="checked"取决于提交的内容。

我提交表单并且(假设至少有一些复选框的名称stuff[]被选中),_POST['stuff']在 PHP 中是一个选中框的值数组,例如('first', 'third', 'fourth'). 但是,如果使用 预先选中复选框,则checked="checked"框的值(上例中的“第一个”)将被排除在stuff值列表之外。即使用户取消选中该框然后重新选中它,它也会被忽略。

我希望提交的值包括所有已检查的项目,包括预先检查(而不是用户未检查)的项目。我怎样才能做到这一点?

4

1 回答 1

1

如果没有看到代码,我会猜测这checked="checked"实际上不是 PHP 代码输出的内容。相反,您可能缺少 a"并且它导致 th 元素的其余值被弄乱了。

相反,请执行以下操作:

<input type="checkbox" checked="<?php echo $checked; ?>" name="stuff[]" value="First" />

其中 $checked =checkednull(没有"

于 2013-04-02T16:39:28.203 回答