11

我希望在我的表单中预先选择单选按钮。

 <?= $form->field($model, 'config')->radioList(['1'=>'Automatic Entry',2=>'Manual Entry'])
     ->label('Barcode/Book No Generation'); ?>
4

4 回答 4

29

预选值取自$model->config。这意味着您应该将该属性设置为您想要预选的值:

$model->config = '1';
$form->field($model, 'config')->radioList([
    '1' => 'Automatic Entry',
    '2' => 'Manual Entry',
]);

与此相关的文档位于ActiveForm类中。

于 2015-07-11T20:36:34.203 回答
2

如果要使用收音机的默认值,可以使用以下代码:

<?php $model->isNewRecord==1 ? $model->config=1:$model->config;?>
<?= $form->field($model, 'config')->radioList(
    [
         '1'=>'Automatic Entry',
         '2'=>'Manual Entry'
    ])->label('Barcode/Book No Generation'); 
?>
于 2017-05-07T22:06:38.603 回答
-1

您必须设置“配置”属性。

$model->config = 1;

加载表单时,您将选择第一个单选按钮。

tarleb 是对的。

于 2015-10-21T15:02:07.373 回答
-2

因为我对 yii2 不是很熟悉,所以在黑暗中远射,但根据文档,你应该能够做这样的事情。

$form->field($model, 'config')->radioList([
          '1'=>'Automatic Entry',
          '2'=>'Manual Entry',
    ], [
        'item' => function ($index, $label, $name, $checked, $value) {
            return Html::radio($name, $checked, ['value' => $value]);
        },
    ]);
// [...]
ActiveForm::end();
于 2015-07-11T14:54:15.467 回答