knockoutjs checked binding for a list of objecs
http://stackoverflow.com/questions/8613602/knockoutjs-checked-binding-for-a-list-of-objecs
HTML
<script src="http://github.com/downloads/SteveSanderson/knockout/knockout-2.0.0.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.4.2/underscore-min.js"></script>
<script src="http://cloud.github.com/downloads/kamranayub/UnderscoreKO/underscore-ko-1.1.0.min.js"></script>
<ul data-bind="foreach: people">
<li>
<input type="checkbox" data-bind="attr: { value: id }, checked: $root.selectedPeople">
<span data-bind="text: name"></span>
</li>
</ul>
<hr/>
<div data-bind="text: ko.toJSON($root)"></div>
JavaScript
function Person(id,name,age) {
this.id = id;
this.name = name;
this.age = age;
}
var listOfPeople = [
new Person(1, 'Fred', 25),
new Person(2, 'Joe', 60)
];
var viewModel = {
people: ko.observableArray(listOfPeople),
selectedPeople: ko.observableArray()
};
viewModel.selectedPeopleViewModels = ko.computed(function() {
return viewModel.selectedPeople.map(function(id) {
return viewModel.people.find(function(person) {
return person.id == id;
});
});
});
ko.applyBindings(viewModel);