首页 > 解决方案 > Yii2 自定义 yii\bootstrap4\ActiveField::radioList 选项

问题描述

我正在使用yii\bootstrap4\ActiveField::radioList并且试图在我的radioList.

$list = [
    0 => '<strong>Option1</strong><br>
        lorem ipsum lorem ipsum',
    1 => '<strong>Option2</strong><br>
        lorem ipsum lorem ipsum',
    2 => '<strong>Option3</strong><br>
        lorem ipsum lorem ipsum,',
];

echo $form->field($model, 'field')->radioList($list)->label('Your choose?');

有没有不创建模板的直接方法?

标签: htmlyii2radio

解决方案


您正在寻找的是items可以让您轻松自定义radioorcheckbox输入和labels.

虽然尚不清楚您要遵循什么布局,radioList但您可以在下面的代码中更改它,我将重点关注您提到的内容,即格式化单选列表输入的文本标签。

$list = [
    0 => '<strong>Option1</strong><br>lorem ipsum lorem ipsum',
    1 => '<strong>Option2</strong><br>lorem ipsum lorem ipsum',
    2 => '<strong>Option3</strong><br>lorem ipsum lorem ipsum,',
];

echo $form->field($model, 'field')
    ->radioList(
        $list,
        [
            'item' => function ($index, $label, $name, $checked, $value) {

                $html = '<label >';
                $html .= '<input type="radio" name="' . $name . '" value="' . $value . '" ' . $checked . '>';
                $html .= '<span>' . ucwords($label) . '</span>';
                $html .= '</label>';

                return $html;
            },
        ]
    )
    ->label('Your choose?');

推荐阅读