【问题标题】:Multiple checkboxes in CakePHP - how to set which are checked?CakePHP 中的多个复选框 - 如何设置选中的复选框?
【发布时间】:2012-08-23 11:45:55
【问题描述】:

我在 CakePHP 的“添加/编辑”视图中有多个复选框,使用以下命令创建:

echo $this->Form->input('email_warning_chb', array('type'=>'select', 'multiple'=>'checkbox', 'label'=> __('Email notice'), 'class'=>'multiple-chb', 'options'=> array('title...'=>array( '5'=>'5 days', '15'=>'15 days', '30'=>'30 days', '60'=>'60 days');

我的问题是如何设置默认检查哪一个(即在此示例中为 5、15 和 60)?

提前谢谢你!

【问题讨论】:

标签: cakephp cakephp-2.0 checkbox


【解决方案1】:

正如在其他答案中所说,您应该设置“已选择”选项。 有些人没有提到的是,您选择的数组应该只包含每个元素中的 id。 示例:

$selectedWarnings = $this->Warning->find('list', array(
  'fields' => array('id')
));


echo $this->Form->input('email_warning_chb', array(
    'label' => 'Email Notice',
    'type' => 'select',
    'multiple' => 'checkbox',
    'options' => $warnings,
    'selected' => $selectedWarnings
  ));

【讨论】:

    【解决方案2】:

    这个好像这个

    cakephp: How to set checkbox to checked?

    其中$selected 包含选定的值

    【讨论】:

      【解决方案3】:

      在您的控制器中,您必须像这样输入值:

      $this->request->data['Model']['email_warning_chb'] = array(5,15,60);
      

      它会自动显示选中的复选框。

      如果不适合你,请询问。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多