如何设置多个复选框的默认值?

时间:2014-08-21 09:35:24

标签: checkbox phalcon

我有一个包含多个复选框的表单

$activity = new Check('activity[]');

<input type="checkbox" name="activity[]" value="1">
<input type="checkbox" name="activity[]" value="2">
<input type="checkbox" name="activity[]" value="3">

当我编辑信息时,我想为DB中的多个复选框设置选中的值,但是setDefault()只接受一个值?我想要的东西如下

setDefault([1, 2]);

<input type="checkbox" name="activity[]" checked="checked" value="1">
<input type="checkbox" name="activity[]" checked="checked" value="2">
<input type="checkbox" name="activity[]" value="3">

在视图文件中我使用

<?php echo $form->render('activity[]', array('value' => 1)) ?>
<?php echo $form->render('activity[]', array('value' => 2)) ?>
<?php echo $form->render('activity[]', array('value' => 3)) ?>

怎么做?谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

您必须为每个检查实例设置setDefault方法。

$activity1 = new Check('check1',['name' => 'activity[]', 'value' => 1);
$activity1->setDefault(1);

$activity2 = new Check('check2',['name' => 'activity[]', 'value' => 2);
$activity2->setDefault(2);

$activity3 = new Check('check3',['name' => 'activity[]', 'value' => 3);
$activity4 = new Check('check4',['name' => 'activity[]', 'value' => 4);