我在这里有一个示例jsfiddle,它使用knockout映射基于服务器模型(在提供的示例中为本地)生成一些html内容。
如何为嵌套地址创建新的地址块? 即如何创建一个名为“添加新”的按钮并在底部创建一个空地址块?
提前感谢您提供的任何帮助。
问题没有解决。我注意到在我实现Bill's solution(下面)后,我为新添加的地址块计算的observable不起作用,因为它们已被禁用。希望有人能解决这个问题。感谢。
self.SMMDD = ko.computed({
read: function() {
**if ($.isFunction(self.SMONTH)) {**
return self.SMONTH() + "/" + self.SDAY();
**}**
},
write: function(value) {
self.SMONTH(value.substring(0, 2));
self.SDAY(value.substring(2, 4));
},
owner: self
});
添加deferEvaluation选项似乎解决了问题。
self.SMMDD = ko.computed({
read: function() {
return self.SMONTH() + "/" + self.SDAY();
},
write: function(value) {
self.SMONTH(value.substring(0, 2));
self.SDAY(value.substring(2, 4));
},
owner: self,
deferEvaluation: true
});