我有一部分我不想渲染的模板,所以我尝试过使用“controlsDescendantBindings”as the documentation proposes。
我做了一个示例,其中模型包含两个属性,“Parent”和“Child”。必须显示父级,但不得渲染Child。
我正在使用KO Programmatic plugin。
它适用于普通绑定:http://jsfiddle.net/vtortola/QXJVb/
使用模板时有效:http://jsfiddle.net/vtortola/uKLnm/3/
以编程方式使用KO时,它不起作用:http://jsfiddle.net/vtortola/XGApK/
有人知道解决方法吗?
感谢。
答案 0 :(得分:0)
两件事。
ko.applyBindings
,这是必要的一步。你的第一个工作是因为你有这个电话。这是your fiddle,使用模板和停止绑定。这是the fiddle使用jQuery方法
注意强>
Knockout提供了自己的方法来限制绑定到特定的div。 KO Programmatic看起来有点......不必要。以下是the documentation page的摘要:
或者,您可以传递第二个参数来定义要搜索数据绑定属性的文档的哪个部分。例如,ko.applyBindings(myViewModel,document.getElementById('someElementId'))。这会将激活限制为具有ID someElementId及其后代的元素,如果您希望拥有多个视图模型并将每个视图模型与页面的不同区域相关联,这将非常有用。
<强>更新强>
正如所承诺的那样,屏幕截图显示这些小提琴按照你的描述工作。
常规方法:
jQuery / KO编程方法: