无法在Select2中设置多个值

Sah*_*lık 8 javascript jquery jquery-select2

我试图在select2-jquery组件中显示选定的值.

var select = $(".select2").select2({
    multiple: true,
    placeholder: "",
    width:'100%',
    data: z 
});
var selectedValues = $("#sourceValues").val().split(',');

$.each( selectedValues, function(k,v){
    $(".select2").select2('val',v);
})
Run Code Online (Sandbox Code Playgroud)

元素sourceValues保存值例如:2,4并且z是按照建议保存id和文本的对象数组.我可以看到<options>它链接到Select2元素,但我无法在元素上显示选定的值.此外,如果我尝试在Chrome控制台上运行查询,那么如果我写了类似的内容,它就会起作用;

  $(".select2").select2('val',4) 
Run Code Online (Sandbox Code Playgroud)

因此,<option>选择id为4.

Sae*_*eed 38

Select2 4.0版本,以防有人需要:

var selectedValues = $("#sourceValues").val().split(',');
$(".select2").val(selectedValues).trigger("change");
Run Code Online (Sandbox Code Playgroud)


Krz*_*iek 9

http://ivaynberg.github.io/select2/#documentation

VAL

附加到选择 - 多值 - 应选择的选项的值属性的数组.null为空.

所以:

var selectedValues = $("#sourceValues").val().split(',');
$(".select2").select2('val',selectedValues);
Run Code Online (Sandbox Code Playgroud)

  • 这似乎不适用于多选,或者我遗漏了一些东西。 (2认同)

Roh*_*hit 5

var selectedValues = $("#sourceValues").val().split(',');
var $multiSelect = $(".select2").select2();
$multiSelect.val(selectedValues).trigger("change");
Run Code Online (Sandbox Code Playgroud)