0

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

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

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

我关注了以下链接,但没有成功
cakephp:如何将复选框设置为选中?
CakePHP 中的多个复选框 - 如何设置选中的复选框?

4

1 回答 1

0

使用控制器并遍历所有选项,填充 $this->request->data。我从不将视图用于默认值。对我来说,这是逻辑,也是控制器在 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) 这样做。

于 2013-02-15T11:56:07.623 回答