我想将相同 ViewModel 的绑定应用于显示相同信息但保存不同值的不同模态框,我尝试向模态添加ID以应用此绑定。
ko.applyBindings(viewModel, document.getElementById("firstModal"));
ko.applyBindings(viewModel, document.getElementById("secondModal"));
它绑定好,但是当我更改任何一个模态中的值时,它会在另一个模式中更改,
我的jsFiddle http://jsfiddle.net/SgkbD/1/有一些我想要的例子。
答案 0 :(得分:1)
为什么你不能这样做http://jsfiddle.net/pmarshallandrew/SgkbD/19/ 并使用相同的viemodel的不同实例?
...这非常有效,因为您将同一个viewmodel的不同实例绑定到DOM的两个不同部分。 编辑 - 更新了更好的答案。
答案 1 :(得分:0)
首先,您的示例未显示您所描述的内容。
要回答您的问题,这是预期的行为。这是因为您将同一个可观察对象绑定到两个不同的位置。但因为它是相同的observable,以任何方式更新它,所以引用它的所有绑定都将被更新。
我已更新您的示例以在http://jsfiddle.net/SgkbD/8/
显示此内容修改强> 在你的答案下面,明显的答案是你不能。相同的属性,这将违背淘汰赛的设计。
但是,你可以做我在http://jsfiddle.net/photo_tom/SgkbD/9/中所做的事情。您可以在不同的部分中绑定视图模型的不同属性。
如果你想要两个不同的viewmodel副本,每个副本绑定到一个不同的部分,那也可以。