Yii框架2创建radioList时如何自定义outer div?

How to customise outer div when creating radioList in Yii framework 2?

下面是我的 bootstrap 生成单选列表的活动字段。

<?= $form->field($model, 'photo_id')->radioList(['A', 'B', 'C']) ?>

以上代码生成以下 HTML 个标签。

<div id="model-photo_id">
    <div class="radio">
        <label>
            <input type="radio" name="Model[photo_id]" value="0" checked=""> 
            A
        </label>
    </div>
    <div class="radio">
        <label>
            <input type="radio" name="Model[photo_id]" value="1" checked=""> 
            B
        </label>
    </div>
    <div class="radio">
        <label>
            <input type="radio" name="Model[photo_id]" value="2" checked=""> 
            C
        </label>
    </div>
</div>

目标是<div class="radio">。我想通过更改 class 名称或添加更多 class 名称、向此 div 添加更多属性等来自定义此 div。我该怎么做?

您可以尝试使用此自定义模板,而不是将 class 应用于单选按钮 div,您还可以将 class 应用于标签

echo $form->field($model, 'photo_id')
        ->radioList(
                [0 => 'A', 1 => 'B', 2 => 'C'], [
            'item' => function($index, $label, $name, $checked, $value) {

                $return = '<label class="modal-radio">';
                $return .= '<input type="radio" name="' . $name . '" value="' . $value . '" tabindex="3">';
                $return .= '<i></i>';
                $return .= '<span>' . ucwords($label) . '</span>';
                $return .= '</label>';

                return $return;
            }
                ]
        )
        ->label(false);