Knockout Template
Knockout Template
by gurkavcu
HTML
<script src="https://github.com/SteveSanderson/knockout/raw/master/build/output/knockout-latest.debug.js"></script>
<script src="http://jquery-json.googlecode.com/files/jquery.json-2.2.min.js"></script>
<div>
<input data-bind="value:parent.defaultValue"></input>
</div>
JavaScript
function ParentObject(id, defaultValue) {
var self = this;
self.id = id;
self.defaultValue = ko.observable(defaultValue);
self.defaultValue.subscribe(function(newValue){
ko.utils.arrayForEach(self.children(), function(child) {
alert(child.id);
});
console.log(newValue);
});
self.children = ko.observableArray();
self.loadChildren = function () {
// standard code to load the children ("lazy load", as I have gobs of data)
}
}
function Child(id, translation, cultureCode) {
var self = this;
self.id = id;
self.cultureCode = cultureCode;
self.translation= ko.observable(translation);
}
var vm = function() {
var self = this;
self.parent = new ParentObject(1,10);
self.parent.children.push(new Child(1,"A","1A"));
self.parent.children.push(new Child(2,"B","2B"));
self.parent.children.push(new Child(3,"C","3C"));
}
var viewModel = new vm();
ko.applyBindings(viewModel);