Php yii2:选中要选中的复选框
我使用的是Yii2框架,我想生成一个像这样的html代码Php yii2:选中要选中的复选框,php,html,yii,active-form,Php,Html,Yii,Active Form,我使用的是Yii2框架,我想生成一个像这样的html代码 <input type="checkbox" id="queue-order" name="Queue[order]" value="1" checked> 以及 echo $form->field($model, 'order') ->checkBox(['label' => ..., 'uncheck' => null, 'checked' => 'checked']);
<input type="checkbox" id="queue-order" name="Queue[order]" value="1" checked>
以及
echo $form->field($model, 'order')
->checkBox(['label' => ..., 'uncheck' => null, 'checked' => 'checked']);
但是所需的字符串“checked”不会出现在生成的html代码中
奇怪的是,如果我用“选中”替换“选中”
然后生成的html代码包含属性“selected”:
那么,如何为属性为“checked”的复选框生成html代码呢 我猜只有当
$model->order
属性取true
值,并且如果它有false
(0
或null
或false
等)值字段将被取消选中时,才会选中此复选框。如果您正在复选框中设置外部值
echo $form->field($model, 'Status')->checkbox(['uncheck' => 'Disabled', 'value' => 'Active']);
<?php $model->order = "02256"; ?>
<?= $form->field($model, "order")->checkbox(['value' => "02256"]); ?>
您的意思是Yii总是根据相应属性的值设置复选框的状态(选中或未选中)?我不能改变支票箱的状态吗?如果我没有弄错,似乎很奇怪…@Mario您混淆了接收项目的不同方式:如果您使用ActiveForm
,则复选框的状态基于模型相应属性的值。@Mario如果您想生成不基于模型的输入,则应使用Html
helper():Html::checkbox($name,$checked,$options))
谢谢,现在我拿到了。您是对的,我最好使用您提到的Html助手类,而不是ActiveForm方法来生成我需要的复选框(此外,我的复选框对应于关联表/模型的属性)。谢谢
<input type="checkbox" id="queue-order" name="Queue[order]" value="1" selected>
echo $form->field($model, 'Status')->checkbox(['uncheck' => 'Disabled', 'value' => 'Active']);
<?php $model->order = "02256"; ?>
<?= $form->field($model, "order")->checkbox(['value' => "02256"]); ?>