我首先使用 applyBindings() 将我的模型应用于文档:
ko.applyBindings(appViewModel);
然后我附加一些动态内容:
$('#contentSection').append(myAccountTmpl);
然后我使用 applyBindings 将模型应用于新内容。如果我使用 getElementById 来引用动态添加的节点,则文档上的绑定已损坏。如果我使用 JQuery 引用样式,我没有问题:
ko.applyBindings(appViewModel,document.getElementById('#myAccountForm')); //corrupts other bindings
ko.applyBindings(appViewModel,$('#myAccountForm')[0]); //No Problems!
如果有人可以对此行为提出解释,将不胜感激。我是这些技术的新手,没有任何线索。我什至无法真正解释我所说的“损坏”是什么意思,除了某些绑定无法显示内容(我确实验证了数据仍在绑定模型属性中)。
此外,这可能会帮助其他人对其绑定有莫名其妙的“腐败”。