2016-11-04 179 views
0
echo $form->field($model, 'user_id[]', [ 
      ])->widget(Select2::classname(), [ 
      'data' => $user_data, 
      'pluginOptions' => [ 
       'allowClear' => true, 
       'placeholder' => 'Select user...', 
       'multiple' => true, 
      ], 
     ])->dropDownList($user_data,  [ 
      'multiple'=>'multiple', 
      'class'=>'chosen-select input-md required', 
     ] )->label(Yii::t('app','User').' : '); 

通过使用上面的代码中,我能够从数据库和显示数据加载到用户的用户,在那里他们可以输入和选择的用户的名单上。假设我想设置2个默认选定值,例如user_id = 1和2,我如何在select 2中这样做?如何设置默认选择用于选择2选择题

回答

1

您需要将值数组传递给您的select2控件,然后进行刷新。例如,要在页面加载时选择user_id 1和2,您需要执行以下操作。

var user_ids = [1,2]; 
$('#YourSelect2Control').val(user_ids); 
$('#YourSelect2Control').select2(); 
2

你可以做到这一点通过设置widgets\Select2;Value选择像

echo $form->field($model, 'user_id[]', [ 
      ])->widget(Select2::classname(), [ 
      'data' => $user_data, 
      'value' => [1, 2], // Initial values, can also check with these value as string["1","2"], 
      . 
      . 

这里是文档Link

希望这会为你工作。

0

每文档从http://demos.krajee.com/widget-details/select2

// Tagging support Multiple 
echo '<label class="control-label">Tag Multiple</label>'; 
echo Select2::widget([ 
    'name' => 'color_1', 
    'value' => ['red', 'green'], // initial value 
    'data' => $data, 
    'options' => ['placeholder' => 'Select a color ...', 'multiple' => true], 
    'pluginOptions' => [ 
     'tags' => true, 
     'maximumInputLength' => 10 
    ], 
]); 

注意“价值”的关键是如何有值的数组。这将设置多个默认的“选择”选项。但是,文档不显示此功能,但不使用“标签”选项。