我有一个使用 jQueryUI 创建的 Select 元素,然后使用敲除绑定。我还有一个用于过滤的文本输入元素(创建方式与选择相同)。在大多数情况下,过滤工作正常,但有时如果文本框中有一个值,我用鼠标选择它,然后按 Delete 键,我的事件会触发,数据会更改但 UI 不会刷新。
这是我的 Computed 属性的代码:
self.filteredItems = ko.computed(function () {
if (self.valueToFilter() === "") {
return self.items();
//when the value is cleared this line gets
//ran properly but the UI doesn't update
} else {
return jQuery.grep(self.items(), function (i) {
return (i.indexOf(self.valueToFilter()) === 0);
});
}
});
任何帮助,将不胜感激。提前致谢。