2015-10-20 75 views
2

我有一個多選擇下拉菜單,當我創建「項目」它工作得很好。yii2多選select dropdown remember selected

  1. 如果我想編輯創建的「項目」,它不記得在創建「項目」時我在下拉菜單中選擇了什麼。

  2. 它將其保存到數據庫中,它顯示它沒有問題,但是如果要編輯,則需要再次選擇它們。

有沒有辦法根據數據庫自動選擇它們? (我仍然希望能夠編輯它,但我希望它們可以被默認選中)。

echo $form->field($model, 'company_id')->dropDownList($items_company, ['prompt' => 'Select Company','style' => 'width:400px;','onchange'=>' 
      $.post("index.php?r=project/lists&id='.'"+$(this).val(), function(data) { 
      $("select#client").html(data); 
      }); 
     ']); 

if($model->client){ 
    echo $form->field($model, 'client') 
     ->dropDownList(
      $items_client, 
      ['id'=>'client','multiple' => true,'style' => 'width:400px;'] 
     ); 

} 

回答

0

最簡單的解決將是剛剛觸發change()事件您company_id選擇框上的文件準備好。假設你的第一選擇的ID是client,下面的代碼:

$this->registerJs('$("select#client").trigger("change");', View::POS_READY); 

不過,我想你應該嘗試一些小工具,處理相關的下拉菜單,例如,this one