如何在Select2 jquery中显示多选?

How to display multiple selection in Select2 jquery?

我的数据库像这样在字符串中存储信息Administrator,Anna,所以如果我想在 Select2 中显示这个预选,我知道它必须在数组中(如果我错了请见谅)。问题,我需要拆分成Array显示。

很遗憾,两个名字都没有显示。

两个名字都已经在数组中拆分了。

像这样单名时出现

那么如何解决呢?

JS:

$.ajax({
    ...
    success: function(response){
            if (response.status == "Success"){
                $("#editLayer3ActivityOwner").val(response.data[0]["task_owner"]).attr("disabled",false);

                $(response.data).each(function(key,value){
                    var owners = value.task_owner.split(',');
                    $(owners).each(function(k,v){
                        $("#editLayer3ActivityOwner").append($("<option>", {
                            response: v,
                            text: v
                        }));
                    });
                    console.log(owners);
                    $("#editLayer3ActivityOwner").select2();
                });
            }
            else {}       
    },
    error: function(e){}
});

您可以使用$("#sel").val(["Administrator","Anna"]).change();方法。 我认为您收到的回复与 format.so 相同,您可以直接回复 $("#editLayer3ActivityOwner").val(response.data).change();

$("#editLayer3ActivityOwner").select2({ width: '100%', placeholder: "Choose", allowClear: true });

var response=["Administrator","Anna"]; //Hope you are getting the ajax response as this
 $("#editLayer3ActivityOwner").val(response).change();
<link href="https://cdn.jsdelivr.net/npm/select2@4.0.13/dist/css/select2.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.12/js/select2.min.js"></script>

<select id="editLayer3ActivityOwner" multiple name="editLayer3ActivityOwner">

<option value="Administrator">Administrator</option>
<option value="Anna">Anna</option>
</select>