我有一个像这样的输入元素
<input id="txtId" type="text" data-bind="value: query, valueUpdate: 'keyup'">
我还有一个绑定到此输入的集合
<script>
var terms = [{name: blah,...,... }];
var viewModel = { query: ko.observable('') };
viewModel.terms = ko.dependentObservable(function () {
var search = this.query().toLowerCase();
return ko.utils.arrayFilter(terms, function (term)
{
return term.name.toLowerCase().indexOf(search) >= 0;
});
}, viewModel);
ko.applyBindings(viewModel);
</script>
我想选择可用的项目,它们应该出现在我的输入元素中。但是项目绑定与集合和集合开始改变。我需要以某种方式打破绑定。所以请帮忙)
答案 0 :(得分:4)
我已经解决了这个问题。我创建了一个标志(修改集合的能力)这个类是不可观察的,有了它我可以操纵我的集合)