Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php yii2:选中要选中的复选框_Php_Html_Yii_Active Form - Fatal编程技术网

Php yii2:选中要选中的复选框

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

我使用的是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']); 
但是所需的字符串“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"]); ?>