PHP复选框填充回来

时间:2009-12-15 18:13:04

标签: php checkbox

我试图以这种方式填充POST复选框

foreach ($chk as $key => $value) {
    if (isset($_POST[$key])) $chk[$key][$_POST[$key]] = 'checked="checked"';
}

但由于某些原因,不会为以下复选框填充它们

 <input type="checkbox" name="chk[]" value="A" />A
 <input type="checkbox" name="chk[]" value="B" />B
 <input type="checkbox" name="chk[]" value="C" />C

任何帮助都会受到赞赏。

2 个答案:

答案 0 :(得分:2)

复选框不会通过魔法填充自己,你必须在那里插入checked =“checked”。我认为你事先填充数据并不好,这通常是最简单的方法:

<input type="checkbox" name="chk[]" value="A" <?php if(isset($_POST['chk']['A'])) echo 'checked="checked"'; ?>/>A
<input type="checkbox" name="chk[]" value="B" <?php if(isset($_POST['chk']['B'])) echo 'checked="checked"'; ?>/>B
<input type="checkbox" name="chk[]" value="C" <?php if(isset($_POST['chk']['C'])) echo 'checked="checked"'; ?>/>C

答案 1 :(得分:1)

浏览器不关心您是否在脚本中预先填充了一些PHP变量:它只看到生成的HTML。您需要将“checked ='checked'”直接写入HTML输出。