我有一個奇怪的問題,至少我覺得這很奇怪。
以下將顯示什麼:
<input type="text" data-bind="value: selectedAddress.street1" />
但是,如果綁定這樣的話,就說明正確的值,但不更新(顯示值,但似乎並沒有綁定到對象):
<input type="text" data-bind="value: ko.toJS($data).selectedAddress.street1" />
我檢查,如果selectedAddress對象實際上包含了數據:
JSON.stringify(ko.toJS(selectedAddress), null, 2)
一第二它確實
{
"id": 5631,
"street1": "Some Adress 43",
"street2": null,
"postcode": "15850",
"city": "GhostTown",
"country": "UK",
"addressTypes": []
}
如何讓輸入字段正確綁定到對象的屬性和顯示/更新相應的價值?
視圖模型:
var theViewModel = function() {
var self = this;
self.no = ko.observable();
self.name = ko.observable();
self.addresses = ko.observableArray([]);
self.selectedAddress = ko.observable(new Address());
...
}
我在做什麼錯?
嘗試'data-bind =「value:selectedAddress()。street1」' - 我不確定在連接observables時是否支持隱式括號。 – Niko
感謝您的幫助。它現在工作! – Xatep
Niko,想做那個答案,所以可以接受嗎? :) –