我有一个敲除observableArray
,它被绑定为select2插件的数据源。
var typeahead = $view.select2({
formatSelection: format,
formatResult: format,
allowClear: true,
multiple: false,
data: self.dataSource(),
//minimumInputLength: 1,
//query: function (queryObj) {
// //queryObj.callback(function () { return CDSData; });
// //console.log(queryObj.term);
// self.searchText(queryObj.term);
// //alert(self.dataSource())
// //queryObj.callback(self.dataSource());
//}
});
我有一个函数可以根据用户输入到select2文本框中的文本更改observableArray
(最终是select2的数据源)。
该函数成功更改了我的observableArray
,但建议列表未使用较新的数据源进行刷新。
请注意,我不能使用Ajax功能。
答案 0 :(得分:0)
当你传递数组dataSource()时,我不相信它实际上是绑定,你不是在此时发送可观察数组而是实际数组本身。我也不认为这会触发KO绑定,当它作为JSON对象传递给select2时,它没有绑定到的元素。
我建议在dataSource observableArray上创建一个observable,然后使用jquery查找$ view并更新数据属性。