如何在id / label对的标签列表上使用initSelection()?

时间:2012-11-01 09:42:59

标签: jquery jquery-select2

我正在初始化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与人名一起传递 - 但是应该我是如何传递数据的呢?我的initSelection回调函数的实现应该如何才能从中正确初始化Select2?

1 个答案:

答案 0 :(得分:4)

问题解决了:

https://groups.google.com/forum/#!topic/select2/3UN3DSiv4lo

您可以在输入值或val()调用中传递ID列表。