web-dev-qa-db-fra.com

yii2: cocher la case à cocher

J'utilise le framework Yii2 et j'aimerais générer un code html comme celui-ci

<input type="checkbox" id="queue-order" name="Queue[order]" value="1" checked>

dans une vue qui utilise ActiveForm.

J'ai essayé

echo $form->field($model, 'order')
          ->checkBox(['label' => ..., 'uncheck' => null, 'checked' => true]); 

aussi bien que

echo $form->field($model, 'order')
          ->checkBox(['label' => ..., 'uncheck' => null, 'checked' => 'checked']); 

mais la chaîne souhaitée "cochée" n'apparaît pas dans le code html généré.

Curieusement, si je remplace "vérifié" par "sélectionné"

echo $form->field($model, 'order')
          ->checkBox(['label' => ..., 'uncheck' => null, 'selected' => true]); 

le code html alors généré contient l'attribut "sélectionné":

<input type="checkbox" id="queue-order" name="Queue[order]" value="1" selected>

Alors, comment puis-je générer du code html pour une case à cocher avec l'attribut "vérifié"?

8
Andrew

Je suppose que cette case à cocher ne sera cochée que si $model->order la propriété prend la valeur true et si elle a false (0 ou null ou false etc) valeur - le champ sera décoché.

5
Goodnickoff

si vous définissez une valeur externe dans la case à cocher.

<?php $model->order = "02256"; ?>
<?= $form->field($model, "order")->checkbox(['value' => "02256"]); ?>
2
shivansh
echo $form->field($model, 'Status')->checkbox(['uncheck' => 'Disabled', 'value' => 'Active']);
0
Maxim Colesnic