【发布时间】:2014-07-24 05:17:36
【问题描述】:
视图模型:
var address = new function {
var self = this;
self.add1 = ko.observable();
self.add2 = ko.observable();
self.city = ko.observable();
self.state = ko.observable();
self.postal = ko.observable();
},
person = new funcion {
var self = this;
self.firstName = ko.observable();
self.lastName = ko.observable();
self.address = ko.observable(address);
},
company = new function {
var self = this;
self.salesPerson = ko.observable(person);
self.shippingAddress = ko.observable(address);
self.billingAddress = ko.observable(address);
};
查看:
<div>
<h3>Shipping Address</h3>
<span class="">Address1: </span><input type="text" data-bind="value:company.shippingAddress.add1">
<span class="">Address2: </span><input type="text" data-bind="value:company.shippingAddress.add2">
<span class="">City: </span><input type="text" data-bind="value:company.shippingAddress.city">
<span class="">State: </span><input type="text" data-bind="value:company.shippingAddress.state">
<span class="">Postal: </span><input type="text" data-bind="value:company.shippingAddress.postal">
</div>
<div>
<h3>Billing Address</h3>
<span class="">Address1: </span><input type="text" data-bind="value:company.billingAddress.add1">
<span class="">Address2: </span><input type="text" data-bind="value:company.billingAddress.add2">
<span class="">City: </span><input type="text" data-bind="value:company.billingAddress.city">
<span class="">State: </span><input type="text" data-bind="value:company.billingAddress.state">
<span class="">Postal: </span><input type="text" data-bind="value:company.billingAddress.postal">
</div>
问题:
在我看来,如果我在一个地方更改地址,它会在所有地方都发生变化。我需要使用 observable,因为我也在同一页面中显示这些详细信息。
有什么帮助吗?
【问题讨论】:
-
您至少可以发布没有所有拼写错误的代码吗?也许创建一个fiddle
标签: mvvm knockout.js durandal