Javascript knockout.js和observatarray在第二次单击时不更新DOM

Javascript knockout.js和observatarray在第二次单击时不更新DOM,javascript,knockout.js,ko.observablearray,Javascript,Knockout.js,Ko.observablearray,我已经看了很多以前的答案,并尝试了一些方法,但我所做的一切都不允许我在第二次尝试应用绑定时更新DOM 看看下面的小提琴,它演示了这个问题 当我通过$.getJSON()IRL提取数据时,fiddle仍然会重现我所处理的内联JSON及其代码的问题 我尝试过的东西都被注释掉了(will/hasmated、replace、removeAll) 我希望实现的是,我的图X(Usher)的五个新闻项元素将被更新/替换为图Y(Lohan)的五个新闻项,但如果我甚至可以将元素5-9附加到0-4,并看到10个l

我已经看了很多以前的答案,并尝试了一些方法,但我所做的一切都不允许我在第二次尝试应用绑定时更新DOM

看看下面的小提琴,它演示了这个问题

当我通过$.getJSON()IRL提取数据时,fiddle仍然会重现我所处理的内联JSON及其代码的问题

我尝试过的东西都被注释掉了(will/hasmated、replace、removeAll)

我希望实现的是,我的图X(Usher)的五个新闻项元素将被更新/替换为图Y(Lohan)的五个新闻项,但如果我甚至可以将元素5-9附加到0-4,并看到10个li标记,这将是一个进步的迹象


要重现问题,请运行fiddle,然后单击“再次执行”链接以模拟JSON加载,并注意,它不会显示新的数据元素,而是生成一个没有子项的空白ul标记。

您不应该将同一对象绑定到多个模型。相反,只需使用新信息更新模型,更改将反映在视图中


我已经更改了代码以完全做到这一点:

谢谢,这非常有效。看来我还有一些关于淘汰赛的东西要学。