我使用了Yii2多选下拉列表,它在创建时工作正常,但在更新时没有显示我选择的值!
形成:
$form->field($model, 'categories[]')
->dropDownList($model->CategoryDropdown,
[
'multiple'=>'multiple'
'class'=>'chosen-select input-md required',
]
)->label("Add Categories");
Run Code Online (Sandbox Code Playgroud)
模型:
public function getCategoryDropdown()
{
$listCategory = Category::find()->select('ID,name')
->where(['is_subcategory' => 'Yes'])
->andWhere(['status' => 'active','approved' => 'active'])
->all();
$list = ArrayHelper::map( $listCategory,'ID','name');
return $list;
}
Run Code Online (Sandbox Code Playgroud)
控制器:
public function actionCreate(){
...
$model->categories = implode(",",$_POST['Company']['categories']);
...
return $this->render('create', [
'model' => $model,
]);
}
public function actionUpdate($id)
{
$model = $this->findModel($id);
echo $model->categories; // 1,2,4,5 values already assigned
...
return $this->render('update', [
'model' => $model,
]);
}
Run Code Online (Sandbox Code Playgroud)
数据库:
1,2,4,5
当我更新我的recored时,如何在下拉列表中显示多个选定的值?
您的所有代码都可以,只需要echo您的$ form - > ...
echo $form->field($model, 'categories[]')
->dropDownList($model->CategoryDropdown,
[
'multiple'=>'multiple',
'class'=>'chosen-select input-md required',
]
)->label("Add Categories");
Run Code Online (Sandbox Code Playgroud)
或者<?= ?>在视野中使用!
| 归档时间: |
|
| 查看次数: |
25625 次 |
| 最近记录: |