我使用的是Yii2框架,我想生成一个html代码,如下所示
<input type="checkbox" id="queue-order" name="Queue[order]" value="1" checked>
在使用ActiveForm的视图中。
我试过了
echo $form->field($model, 'order')
->checkBox(['label' => ..., 'uncheck' => null, 'checked' => true]);
以及
echo $form->field($model, 'order')
->checkBox(['label' => ..., 'uncheck' => null, 'checked' => 'checked']);
但是期望的串“checked”没有出现在所生成的HTML代码中。
奇怪的是,如果我用“选中”代替“选中”
echo $form->field($model, 'order')
->checkBox(['label' => ..., 'uncheck' => null, 'selected' => true]);
则生成的HTML代码包含属性“selected”:
<input type="checkbox" id="queue-order" name="Queue[order]" value="1" selected>
那么,如何为属性为“checked”的复选框生成html代码呢?
4条答案
按热度按时间zengzsys1#
我猜只有当
$model->order
属性取true
值并且它有false
(0
或null
或false
等)值时,才会选中此复选框-字段将被取消选中。vmpqdwk32#
如果要在复选框中设置外部值。
1u4esq0p3#
u5rb5r594#
您可以使用checked属性将其标记为选中
<?= $form->field($model, 'agent_email_verification')->checkbox(['checked' => $model->agent_email_verification > 0, 'value' => true]) ?>