如何在yii2中创建一个activeRadioList,其中复选框没有包含在标签中? IE浏览器。标签和输入彼此相邻。
以下内容创建了一个单选按钮列表,其中每个输入都包含在标签中:
<?= $form->field($model,'myattribute')->radioList(['n'=>'No','y'=>'Yes']) ?>
您可以通过将第二个参数设置为false来创建一个未包含在标签中的单选按钮:
<?= $form->field($model,'myattribute')->radio(null,false) ?>
但你怎么做这个列表? (仅供参考。我需要这个与materializedcss框架一起使用,以防你想知道)。
答案 0 :(得分:1)
您只需设置label
属性false
<?= $form->field($model,'myattribute')->radioList(['n'=>'No','y'=>'Yes'])->label(false); ?>
更新回答
因此,在这种情况下,您需要使用自定义逻辑,如下所示。
<?=
$form->field($model, 'myattribute')
->radioList(
['n'=>'No','y'=>'Yes'], [
'item' => function($index, $label, $name, $checked, $value) {
$return = '<input type="radio" name="' . $name . '" value="' . $value . '">';
$return .= '<i></i>';
$return .= '<span>' . ucwords($label) . '</span>';
return $return;
}
]
)
->label(false);
?>
答案 1 :(得分:0)
将附加参数传递给字段配置:
<?= $form
->field($model,'myattribute')
->radioList(['n' => 'No', 'y' => 'Yes'], [
'itemOptions' => ['label' => null],
]) ?>