select2 显示多个默认值 select

select2 show default value in multiple select

我用https://select2.github.io/examples.html#multiple 我使用加载数据到选项:

  var data = [
  {  id: 0, text: 'Hawaii' },
  {  id: 1, text: 'California' },
  {  id: 2, text: 'Bla' }
];

并设置默认值:

$basicMultiple.val(["0", "1"]);

当我加载页面并单击字段时,它看起来像这样:

选择了夏威夷和加利福尼亚

然后,如果我单击 Bla 选项,字段如下所示:

如何使默认值在加载页面时立即在字段中可见?

您正在更改选定的值,但没有通知 Select2 您已做出更改。因此,当您打开下拉菜单时,Select2 可以告诉您已经进行了两个选择,但它在呈现选择时并不知道。

您可以通过触发原始 <select> 上的 change 事件来告诉 Select2 您已经进行了更改。

你最常将 tags 属性 设置为 true 以在启动时显示你想要的样子,例如此代码

$(".js-example-tags").select2({
  tags: true
})

$basicMultiple.val(["0", "1"]).trigger("change");