如何在Yii框架中创建radioList时自定义外部div 2



下面是生成radiolist的bootstrap activefield。

<?= $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">。我想通过更改类名或添加更多类名来自定义此div,在此div中添加更多属性等。我该怎么做呢?

您可以尝试使用这个自定义模板,而不是将class应用于单选div,您也可以将class应用于label

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);

最新更新