2016-06-21 154 views
1

我正在使用多选下拉列表用于选择多个选项。直到这个好。但是当我需要在查看页面中显示那些选择的选项时,我就卡住了。显示多选下拉列表中的选项 - Yii2

我试过了。

<? 
public function getSelectedTodosCaseId($todos_id) { 
    $case_ids = Todos::find()->select(['case_id'])->where(['todos_id'=> $todos_id])->all(); 
    $selected = []; 
    if($case_ids){ 
     foreach($case_ids as $case_id){ 
      $selected[] = $case_id->case_id ; 
     } 
    } 
    return $selected; 
} 
?> 

我在这里使用这个函数。

<?php 

$selectedCase = $this->getSelectedTodosCaseId($id); 

for($i = 0; $i < sizeof($selectedCase); $i++){ 
    $model->t_case_id = $selectedCase[$i]; 
} 
?> 

<?= $form->field($model, 't_case_id[]', 
          ['options' =>['class' => ''],'inputOptions'=>['multiple'=>'multiple','size'=>'4']]) 
          ->dropDownList($current_user_cases);?> 

任何帮助/提示将是可观的。

+0

尝试此 '<= $形式 - >字段($模型, 't_case_id') - > DROPDOWNLIST($ current_user_cases, [ '类'=> '选择选所需的输入-MD', 'multiple'=>'multiple' ] ) - > label(“Your lable”); ?>' –

+0

简而言之就是从字段t_case_id []中删除数组(方括号)。只需给t_case_id,不需要它会自动转换为数组 –

+0

*谢谢* @KandarpPatel。我不知道数组中的多选下拉式自动转换。非常感谢。 * Achha Hain .. Achha Tha .. Achha Rahega .. * –

回答

0

总之刚刚从字段t_case_id []删除数组(方括号)。 只需给t_case_id,不需要它会自动转换为 数组。 〜@KandarpPatel

$model->t_case_id = $selectedCase; 
<?= $form->field($model, 't_case_id', 
     ['options' =>['class' => ''],'inputOptions'=>['multiple'=>'multiple','size'=>'3']]) 
     ->dropDownList($current_user_cases)->label("Related to");?> 

我没有提供下拉名array type。但是,它被自动转换。而且,它像一个魅力。