我正在初始化一个Select2标记列表,如下所示:
<input type="text" name="users" value="" id="users" class="span3" />
$("#users").select2({
tags : [
{'id':1, 'text':'Ben'},
{'id':22, 'text':'Andrea'},
{'id':23, 'text':'Tim'},
{'id':7, 'text':'Matt'}
]
,tokenSeparators : [",", " "]
}).on('change', function(event){
console.log(event.val.toString());
});
...当输入框开始为空时,这是一种享受。按姓名选择人员会返回一个简单的 ID 数组,我可以将其发送回数据库。
但是,我对如何使用现有选择初始化此列表感到困惑。假设我加载了已选择 Ben 和 Andrea 的页面:
<input type="text" name="users" value="Ben, Andrea" id="users" class="span3" />
我可以看到 Select2 有一个 initSelection() 方法,但我不确定如何使用它。显然上面的例子是错误的,因为我没有将 ID 和人名一起传递——但是我应该如何传递这些数据呢?为了正确初始化 Select2,我的 initSelection 回调函数的实现应该是什么样子?