Php 如何设置“选择2”多选的默认选定项

Php 如何设置“选择2”多选的默认选定项,php,yii2,jquery-select2,select2,Php,Yii2,Jquery Select2,Select2,通过使用上面的代码,我能够从数据库加载数据,并在用户列表上显示给用户,用户可以在列表中键入并选择用户。假设我想设置2个默认的选定值,如user_id=1和2,我如何在select 2中进行设置?您需要将一个值数组传递给select2控件,然后刷新它。例如,要在页面加载时选择user_id 1和2,您需要执行以下操作 echo $form->field($model, 'user_id[]', [ ])->widget(Select2::classname(

通过使用上面的代码,我能够从数据库加载数据,并在用户列表上显示给用户,用户可以在列表中键入并选择用户。假设我想设置2个默认的选定值,如user_id=1和2,我如何在select 2中进行设置?

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

    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').' : '); 

您需要向select2控件传递一个值数组,然后刷新它。例如,要在页面加载时选择用户id 1和2,您需要执行以下操作

    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').' : '); 

您可以通过设置
widgets\Select2的
Value
选项来实现这一点类似

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


希望这对你有用。

你可以通过设置
widgets\Select2的
Value
选项来做到这一点类似

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


希望这将适用于美国。

根据以下文件:

//标记支持多个
回显“标记多个”;
echo Select2::小部件([
'name'=>'color_1',
'value'=>['red','green'],//初始值
“数据”=>$data,
“选项”=>[“占位符”=>“选择颜色…”,“多个”=>true],
“插件操作”=>[
'tags'=>true,
“最大输入长度”=>10
],
]);

请注意“value”键如何具有值数组。这将设置多个默认的“选定”选项。但是,如果不使用“标记”选项,文档中不会显示此功能。

根据以下文档:

//标记支持多个
回显“标记多个”;
echo Select2::小部件([
'name'=>'color_1',
'value'=>['red','green'],//初始值
“数据”=>$data,
“选项”=>[“占位符”=>“选择颜色…”,“多个”=>true],
“插件操作”=>[
'tags'=>true,
“最大输入长度”=>10
],
]);
请注意“value”键如何具有值数组。这将设置多个默认的“选定”选项。但是,如果不使用“标记”选项,文档中不会显示此功能