如何在cakephp中默认选中所有复选框?

时间:2013-02-15 11:46:08

标签: html cakephp cakephp-1.3 cakephp-2.0

我想在cakephp中默认选中所有复选框,我该怎么做

 $selected = $this->Form->input('user_id')                  

 <?php echo $form->input('user_id', 
                                array(
                                'multiple'=>'checkbox',
                                    'options'=>$user,
                                    'checked'=>$selected
                                )   
                            );
                ?>

我已按照以下链接但未获得成功 cakephp: How to set checkbox to checked?
Multiple checkboxes in CakePHP - how to set which are checked?

1 个答案:

答案 0 :(得分:0)

使用控制器并迭代所有选项,填充$ this-&gt; request-&gt;数据。 我从不将视图用于默认值。对我来说,这是逻辑和控制器在GET情况下的责任的一部分(而不是POST,它应该使用发布的数据)

请参阅http://www.dereuromark.de/2010/06/23/working-with-forms/

在你的情况下(假设你有一个userIds数组 - 或任何其他包含它们的数组):

foreach ($userIds as $userId) {
    $this->request->data['Model']['user_id'][] = $userId;
}

请记住仅针对if(!posted)。

执行此操作