Yii2可选文本框,带有来自数据库的Checkbox

时间:2016-01-25 12:23:29

标签: yii2 checkboxlist

我正在使用以下代码从数据库生成复选框。我需要为某些选项添加可选文本框。任何人都可以给我添加它的线索吗?

$form->field($model_detail, 'DOCUMENT_TYPE_ID')
       ->checkboxList(
        $listData,array('separator'=>'<BR />')
       )->label('Select Document(s)');

1 个答案:

答案 0 :(得分:0)

您应该扩展ActiveField并编写自定义checkboxList方法。它可能看起来像这样:

class ProjectActiveField extends ActiveField
{
    /**
     * @inheritdoc
     */
    public function checkboxList($items, $options = [])
    {
        $inputs = '';
        foreach ($items as $id => $value) {
            $input = Html::activeCheckbox($this->model, $this->$id, $options);
            $description = $options['itemDescriptions'][$id];
            if ($description) {
                $input = '<div class="checkbox">' . $description . $input . '</div>';
            }

            $inputs .= $input;
        }

        $this->adjustLabelFor($options);
        $this->parts['{input}'] = $inputs;

        return $this;
    }
}