php – Yii2 Html :: dropDownList和Html :: activeDropDownList权衡

前端之家收集整理的这篇文章主要介绍了php – Yii2 Html :: dropDownList和Html :: activeDropDownList权衡前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在Yii2中,使用 Html :: activeDropDownList,我可以使用如下形式提交数据:
<?= Html::activeDropDownList($model,'category',ArrayHelper::map($categories,'id','name'),[
       'multiple' => 'multiple','class' => 'multiselect',]) ?>

有没有办法在上面指定预先选择的类别?
我知道可以使用Html :: dropDownLost完成,如下所示:

<?= Html::dropDownList('category',[1,3,5],[
     'multiple' => 'multiple',]) ?>

但是有一个权衡!没有地方可以表明这是附加到某个模型的一些数据,因为使用了Html :: activeDropDownList.

我找到的解决方案之一是使用ActiveForm,如下所示:

<?= $form->field($model,'category')
      ->dropDownList('category','name')
]) ?>

我最后一个选项的问题是我无法指定html选项,如’multiple’和css,如’class’.

有关能够使用下拉列表以及指定列表是多选并具有预选值的任何帮助吗?此外,如果有人将我引导到我可以阅读有关何时何地选择activeDropDownList或dropDownList的资源,我真的很感激.

谢谢!

@ scaisEdge的答案是正确的,但您可以尝试另一种选择:
<?PHP 
$model->category = [1,5]; //pre-selected values list
echo $form->field($model,'category')
    ->dropDownList(ArrayHelper::map($categories,[
            'multiple' => 'multiple','class' => 'YOUR_CLASS'
        ]
) ?>

代码也有效并经过测试.快乐编码:)

原文链接:https://www.f2er.com/php/134630.html

猜你在找的PHP相关文章