首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yii2:如何在CheckboxList中显示选中的值

Yii2:如何在CheckboxList中显示选中的值
EN

Stack Overflow用户
提问于 2015-04-27 06:29:05
回答 1查看 5.7K关注 0票数 3

我想在YII2.0的复选框列表中显示选中的值。以下是我的代码:

主阵列:

代码语言:javascript
复制
<?php
$featureArr = array(
    'Change Requester' => 'Change Requester',
    'Clone Request' => 'Clone Request',
    'Suspend Request' => 'Suspend Request',
    'In-Process Requests Open in Edit Mode' => 'In-Process Requests Open in Edit Mode',
    'Allow On-the-Fly Notifications' => 'Allow On-the-Fly Notifications',
    'Additional Comments Field' => 'Additional Comments Field',
    'Do Not Validate Draft Requests' => 'Do Not Validate Draft Requests',
    '(Web-Only) Allow File Attachments' => '(Web-Only) Allow File Attachments',
);

从表中获取数据以显示选中的项:

代码语言:javascript
复制
$formFeatureModel = FormFeatureForm::find()->where("form_id=" . $model->id)->all();

$checkedFeatureArr = array();
foreach ($formFeatureModel as $data) {
    $checkedFeatureArr[$data->feature] = $data->feature;
}
?>

复选框字段

代码语言:javascript
复制
<?= $form->field(new FormFeatureForm, 'feature')->checkboxList($featureArr, ['class' => 'featureCls']) ?>

我正在从数据库中得到$checkedFeatureArr中的检查项。现在我只想展示检查过的物品。那么,我应该在哪里传递$checkedFeatureArr数组呢?被困在这里面。

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-27 06:42:00

当将它与模型一起使用时,您应该用选定的值填充feature模型属性。

代码语言:javascript
复制
$model->feature = $checkedFeatureArr;

然后它将被自动检查。

附加提示:

  • 最好避免SQL中的级联,将->where("form_id=" . $model->id)替换为->where(['form_id' => $model->id])
  • 在呈现ActiveForm之前最好先创建ActiveField
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29888665

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档