我是淘汰赛的新手。我正在尝试一个场景,但我无法让它发挥作用。请帮忙。我正在使用 MVC4。
function ViewModel(data) {
var self = this;
this.Collection = ko.observable(data);
self.GetFilteredCollection = ko.computed(function () {
var filteredCollection = ko.utils.arrayFilter(self.Collection(), function (item) {
return item.IsSelected == true;
});
return filteredCollection;
});
self.FilteredCollectionCount = ko.computed(function () {
return self.GetFilteredCollection().length;
});
});
var collectionList = eval('<%= new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(Model.Collection) %>');
var VM = new ViewModel(collectionList);
ko.applyBindings(VM);
我已将该IsSelected
属性绑定到复选框。最初,该IsSelected
属性将设置为 false。
<span id="Span1" data-bind="text:$root.FilteredCollectionCount"></span>
即使我选中复选框,我总是将 Span 值设为 0。但我可以看到属性IsSelected
更改为 true。