如何在多个select2上设置选定的值?

时间:2019-10-23 11:18:01

标签: javascript jquery jquery-select2

我有一个多个select2输入。我正在其中填充所有必要的选项。之后,我向其发送选定的值,但是这些选定的值未在UI上标记。

我尝试了以下代码块,但都不起作用。

let array = [];

  data.jobDepartments.map(x => {
    array.push(x.id);
  });

  $("#jobDepartment").val(array).trigger("change");
let array = [];

  data.jobDepartments.map(x => {
    array.push(x.id);
  });

  $("#jobDepartment").select2("val", array);

这是我对select2输入的设置。

<select id="jobDepartment" name="jobDepartment" class="form-control select2" multiple="multiple" data-toggle="tooltip" data-trigger="hover" data-placement="top" data-title="jobDepartment"></select>
$(document).ready(function () {
  $(".select2").select2();
});
let array = [];

  data.jobDepartments.map(x => {
    array.push(x.id);
  });

  $("#jobDepartment").val(array).trigger("change");

结果是:https://prnt.sc/pn0v94

我原本是这样的:https://prnt.sc/pn0vvb

您能帮我吗?

2 个答案:

答案 0 :(得分:0)

尝试这个Fiddle

您的代码中缺少以下内容: 创建select2时应该有数据配置

$("#e9").select2({
        placeholder: "Select a State",
        allowClear: true,
    templateSelection:function(obj){
    return obj.title;
    },
        data: [{
                'id': 1,
                title: 'test'
            }, {
                'id': 2,
                title: 'test1'
            }
        ]
    });

然后您便找零了

答案 1 :(得分:0)

我解决了这个问题。错误是即将到来的数据。我的数据ID错误。