php-如何在Yii2应用程序中的多个选择下拉列表中显示选定的值?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php-如何在Yii2应用程序中的多个选择下拉列表中显示选定的值?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2174字,纯文字阅读大概需要4分钟。
内容图文
我正在研究Yii2.我正在使用这样的自定义数组创建多个选择下拉列表.
在控制器文件中:
$all_groups = Groups::find()->where(['=','group_created_by',$id])->orwhere(new Expression('FIND_IN_SET(:id_to_find, group_managers)'))->addParams([':id_to_find' => $id])->all(); // fetch all values
$selected_groups = Groups::find()->where(['=','group_users',$updateId])->orwhere(new Expression('FIND_IN_SET(:id_to_find, group_users)'))->addParams([':id_to_find' => $updateId])->all(); // getting selected values
$all_groups_array = [];
foreach ($all_groups as $group) {
$all_groups_array[$group->id] = ucfirst($group->group_name);
}
在视图上渲染数据:
return $this->render('mngr_userupdate', [
'model' => $model,
'all_groups_array'=>$all_groups_array,
'case'=>$case,
'email_error' => 'false',
'applied_email' => '' ,
]);
所以它正在创建这样的数组:
Array
(
[11] => Mngr1 group
[14] => Mngr 11 Group
)
在vies文件中:
<?= $form->field($model, 'group_user[]')->dropDownList($all_groups_array,['multiple' => 'multiple']) ?>
在创建用于数据插入的表单时,它运行良好.但是如何创建一个数组,通过它我可以在更新表单上显示选定的值.
编辑:
我只是发现如果我像这样使用
<?= $form->field($model, 'group_user[]')->dropDownList($all_groups_array,['multiple' => 'multiple', 'options'=>['14'=>["Selected"=>true],'11' => ["Selected"=>true]]]); ?>
然后它将开始显示所选的值.即我必须创建数组
[
'14'=>["Selected"=>true],
'11' => ["Selected"=>true]
]
为此,我使用如下循环:
foreach ($selected_groups as $key => $value) {
$sel_groups_array[$value] = '' // what should be there or else
}
如何使用循环创建此数组?
解决方法:
我已经创建了我的问题的解决方案,以防万一如果有人遇到这种问题,那么他可以使用如下所示的循环:
foreach ($selected_groups as $group) {
$sel_groups_array[$group->id] = array("selected"=>true);
}
在视图文件中,可以使用该数组显示选定的多个值,如下所示:
<?= $form->field($model, 'group_user[]')->dropDownList($all_groups_array,['multiple' => 'multiple','options' => $sel_groups_array]); ?>
由于在更新表单上显示多个选定值的结构,因此应如下所示:
$form->field($model, 'group_user[]')->dropDownList($all_groups_array,['multiple' => 'multiple', 'options'=>['14'=>["Selected"=>true],'11' => ["Selected"=>true]]]);
// here 14 and 11 I am using as example
内容总结
以上是互联网集市为您收集整理的php-如何在Yii2应用程序中的多个选择下拉列表中显示选定的值?全部内容,希望文章能够帮你解决php-如何在Yii2应用程序中的多个选择下拉列表中显示选定的值?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。