Javascript 选择2 4.0。-使用触发器(“更改”)设置初始值不起作用

Javascript 选择2 4.0。-使用触发器(“更改”)设置初始值不起作用,javascript,jquery-select2-4,Javascript,Jquery Select2 4,我对Select2.js(最新版本4.0)有问题。我正在构建一个表单,允许用户定义新项目并将其添加到篮子中。项目定义的一部分是从picklist select2.js中选择一些值。将项目添加到购物篮后,用户仍然可以编辑该项目。编辑从购物篮中删除商品,并将其返回到新商品表单。此时,我正在努力将以前选择的值放回select2.js选取列表中 下面是我根据文档编写的简单代码,但是.trigger'change'似乎没有被触发 function editItem(items) {

我对Select2.js(最新版本4.0)有问题。我正在构建一个表单,允许用户定义新项目并将其添加到篮子中。项目定义的一部分是从picklist select2.js中选择一些值。将项目添加到购物篮后,用户仍然可以编辑该项目。编辑从购物篮中删除商品,并将其返回到新商品表单。此时,我正在努力将以前选择的值放回select2.js选取列表中

下面是我根据文档编写的简单代码,但是.trigger'change'似乎没有被触发

function editItem(items) {                                // items var contain array of elements
   var $picklistField = $j(".picklistSelectBox");         // this is my picklist field
   $picklistField.val(items).trigger('change');           // fire change event    
}
我还在picklist字段上有一个变更事件监听器,并且不会触发触发器变更事件

你知道为什么吗

也许我做错了-因为.picklistSelectBox字段在几行之前是用select2初始化的。也许正确的做法是将初始选择的值传递给此方法?如果是这种情况,那么使用.select2初始化来放置初始选定值的选项是什么

谢谢你的帮助,
Maciek

什么是项目?你如何初始化Select2?你的HTML是什么样子的?我不认为粘贴完整的HTML是个好主意。我的问题是如何用一些已经选择的值初始化select2字段。在文档中只写到:在过去,Select2需要一个名为initSelection的选项,该选项在使用自定义数据源时定义,允许确定组件的初始选择。这已被数据适配器上的当前方法替换。有什么例子吗?