【发布时间】:2015-01-04 13:32:13
【问题描述】:
我正在尝试订阅嵌套对象,但它不起作用。这里是my fiddle。 下面也是我的代码
var ViewModel = function () {
this.data = ko.observable();
var sample = {
id: 1,
details: {
name: "Johnny",
surname: "Boy",
othername: ""
}
};
this.data(sample);
//This does not work
// this.data().details().name.subscribe(function (val) {
//data().details().othername(val)
// });
};
ko.applyBindings(new ViewModel());
这是我的html
<div data-bind="with: data">
<p>Name:
<span data-bind="text: details.name"></span>
</p>
<p>Surname:
<input data-bind='value: details.surname' />
</p>
<p>Other:
<input data-bind='value: details.othername' />
</p>
【问题讨论】:
-
使用官方的mapping plugin或者更强大的Knockout Viewmodel plugin。
标签: jquery knockout.js subscription