Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Select2.js v4.0:如何使用本地数组数据源设置默认选定值?_Javascript_Jquery_Jquery Select2_Jquery Select2 4 - Fatal编程技术网

Javascript Select2.js v4.0:如何使用本地数组数据源设置默认选定值?

Javascript Select2.js v4.0:如何使用本地数组数据源设置默认选定值?,javascript,jquery,jquery-select2,jquery-select2-4,Javascript,Jquery,Jquery Select2,Jquery Select2 4,通过使用v4插件,当我使用本地数组数据作为源时,如何设置默认的选定值 例如,使用此代码 var data_names = [{ id: 0, text: "Henri", }, { id: 1, text: "John", }, { id: 2, text: "Victor", }, { id: 3, text: "Marie", }]; $('select').select2({ data: data_names, }); 如何将id 3设置为默认选定值

通过使用v4插件,当我使用本地数组数据作为源时,如何设置默认的选定值

例如,使用此代码

var data_names = [{
  id: 0,
  text: "Henri",
}, {
  id: 1,
  text: "John",
}, {
  id: 2,
  text: "Victor",
}, {
  id: 3,
  text: "Marie",
}];

$('select').select2({
  data: data_names,
});

如何将id 3设置为默认选定值?

这在我使用V4.0.3时适用

$('.select').select2({
        data: data_names,
    }).select2("val",3);
$('.select').select2({
    data: data_names,
})
$('select').val(3);
$('select').trigger('change.select2');

最好发送另一个属性(在下面的示例中选择)进行选择,并使用它设置默认值。我做了下面的事情-

var data_names = [{
  id: 0,
  text: "Henri",
}, {
  id: 1,
  text: "John",
}, {
  id: 2,
  text: "Victor",
}, {
  id: 3,
  text: "Marie",
  selected: true
}];
那就做吧

            $(".select").select2({
                data : data_names
            });
            data_names.forEach(function(name){
                if(name.selected) { 
                   $(".select").select2('val',name.id);
                }
            });
这对我来说很有用


$('#select').select2({data:data_names}).val(3).trigger('change')

$(“#id”).select2().select2(“val”,这里的一个值”);从v4.1开始,只需执行{id:3,文本:“Marie”,selected:true}。这是v4的正确答案。您可以更简洁地编写
$('.select').val(3).trigger('change')
。使用
trigger('change.select2')
仅将更改通知select2。请看,这是版本4.1的正确答案。您所需要的只是数据元素上的“selected:true”,不应触发任何事件或调用API方法。