Cakephp为多个复选框子组设置默认值

时间:2016-06-01 20:06:51

标签: php cakephp checkbox default options

如何在使用复选框的“子组”时设置默认选中的复选框?您可以通过为'options'属性设置嵌套数组来实现所谓的“子组”。我希望默认选中所有复选框。

echo $this->Form->input('fooBar', [
    'type' => 'select',
    'multiple' => 'checkbox',
    'label' => false,
    'class' => 'inlineBlock',
    'options' => [
        'Foo' => [0 => 'Yes', 1 => 'No' ]
        'Bar' => [0 => 'One', 1 => 'Two', 2 => 'Three']
]]);

我试过设置

  

'selected'=> [0 => [0,1],0 => [0,1,2]]

  

'checked'=>真

但没有运气。 如果我手动检查它们而不是提交表单,Cakephp会生成URL参数,就像没有“子组”一样,例如:

  

'options'=> [0 => '是',1 => '不']

这与我设置

时的行为相同
  

'default'=> [1,2,3]

是否可以设置个人复选框“子组”的选定复选框?

1 个答案:

答案 0 :(得分:1)

你需要使用' val'属性如下:

                    <?= $this->Form->control("themes._ids", [
                        "label" => false,
                        'multiple' => 'checkbox',
                        "val" => [1, 2, 3]
                    ]) ?>

参考API Doc