无法为标签设置值

时间:2015-12-08 20:14:36

标签: jquery-select2-4

我无法为select2 v4.0.1实例设置初始值;正在使用标签创建选择:true。

HTML:

<select id="tags" name="tags" class="form-control" multiple></select>

JS:

$('#tags').select2({'tags': true});

试过:

<select id="tags" name="tags" class="form-control" multiple>
<option selected>{{ tag }}</option>
</select>

和:     $(&#39;#tags&#39;)。select2({&#39; tags&#39;:true});     $(&#39;#标签&#39)。VAL([&#34;测试&#34;])。变化();

和其他较小的变化,无济于事:&#39;(

此文档代码段似乎有一个领先优势:https://select2.github.io/announcements-4.0.html#removed-initselection但非常令人困惑,我是select2的新用户。

根据较旧的帖子,这对于较旧的select2 3系列来说根本不是问题,但它包含隐藏的输入问题和其他令人讨厌的东西。

有谁知道我错过了什么?

1 个答案:

答案 0 :(得分:3)

回答自己:)

找到两种可行的方式略有不同:

  1. 添加静态子<option>元素

    <select id="tags" multiple="multiple" autocomplete="off">
    <option selected>test1</option>
    <option selected>test2</option>
    </select>
    <script type="text/javascript">
    $('#tags').select2({tags: true});
    </script>
    
  2. 动态添加子<option>元素,然后触发更改

    <select id="tags" multiple="multiple" autocomplete="off"></select>
    <script type="text/javascript">
    $('#tags').select2({tags: true});
    $('#tags').append("<option selected>test1</option><option selected>test2</option>").change();
    });
    </script>
    
  3. val()方法仅适用于选择选项,而不适用于向选择倍数添加/删除选项。