我在选择初始值的情况下初始化新的select2插件时遇到了问题。
我正在填充数据对象中的数据(我从ajax调用中获取)。然后初始化select2。
这是原始选择控件的html:
<select class="tagsinput" multiple="multiple" name="tags[]">
<option value="">Enter tags for the article</option>
<option value="3" selected="selected">test</option>
</select>
如果没有select2初始化,这将按预期工作
我的数据是通过对数据库的ajax调用获得的,如下所示:
$.ajax({
type: 'GET',
url: '/articles/tags',
dataType: 'json',
cache: false,
success: function(data) {
initTagsSelect(data);
}
});
以下是我启动select2的方法:
function initTagsSelect(data) {
$('.tagsinput').select2({
theme: "bootstrap",
data: data,
minimumInputLength: 2,
tags: true,
tokenSeparators: [','],
});
这会初始化选择并将其转换为标记字段,但初始选择将丢失。文本字段为空。我可以看到数据调用提供的所有标记都作为附加选项附加到选择字段。
我很难在搜索中找到新的select4示例,所以不确定我现在需要做什么。我确实看到了新的current
选项,但对此并不清楚。
更新
我为问题创建了一个jsbin:https://jsbin.com/lupafan/edit?html,js,output。
如果我从初始化中删除数据,则会正确创建初始值 - 当我引入数据对象时,初始值不会出现