我想在我的代码中使用受保护的observable,所以我找到了这个教程:
在网站上播放演示时,我发现了以下情况:
我认为这会让最终用户感到困惑,因为当您最初更改该值时,在您点击另一行的编辑按钮后,该值不会出现在屏幕上。屏幕上显示的值仍然是原始值。
那么,你如何解决这个问题呢?
答案 0 :(得分:1)
问题不在受保护的可观察对象中,而是演示如何处理编辑按钮。
要使其适用于editItem
中的场景,您需要在开始编辑新行之前取消所有待处理的编辑:
this.editItem = function(item) {
if (self.selectedItem() != null)
self.cancelItemEdit()
self.selectedItem(item);
};
演示JSFiddle。