使用 jquery 在多个 select 框中设置自动 select 值的问题

issue with set autoselect value in multiple select box with jquery

我正在使用 skote 主题,我想在编辑数据时在多个 select select 框中设置自动 select 值 我从中获得了这个多个 select 框这个 this 因为我正在尝试下面的代码

    <select class="select2 form-control select2-multiple" name="assign_to[]" multiple="multiple"                                     data-placeholder="Choose ...">
    <option value="1" data-select2-id="1">Admin</option>
    <option value="2" data-select2-id="2">Admin2</option>
    <option value="3" data-select2-id="3">Admin3</option>
</select>


    $(document).on('click','.edittodotask',function(e){

    e.preventDefault();
    var id = $(this).attr('id').replace('edittodotask_', '');
    var url = "{{route('task_to_do.edit', ':id')}}";            
    url = url.replace(":id", id);

    
    $.ajax({
        type: "get",
        url: url,
        processData: false,
        contentType: false,
        success: function(response) {
            //response = assign_to: "1, 2"                
            var assign_to = response.assign_to.split(',');                
            $("#edit_assign_to").val(assign_to);            
        },
        error: function(data) {
            console.log(data);


        }
    })
    
});

当我点击编辑按钮时,我得到了 ajax 的数据,并想为其设置自动 select 选项,我已经制作了这段代码

但未设置 selected 值。

谁能帮我解决这个问题

使用 select2,您需要手动触发更改。

$("#edit_assign_to").val(response.assign_to.split(',')).trigger('change.select2'); 

如果您的数据 returns 1, 2 带有逗号,则需要用 , 分隔并在逗号后添加 space。