【问题标题】:KnockoutJs v2.3.0 : "cannot apply bindings multiple times to the same element"KnockoutJs v2.3.0:“不能多次将绑定应用于同一个元素”
【发布时间】:2013-09-27 23:55:36
【问题描述】:

问题:

在现有应用程序中,我添加了一项新功能,该功能使用敲除显示网格和一些附加信息。我在开始时加载一些数据并准备使用 ajax 加载其他数据的订阅,在 Razor 视图中创建视图模型以注入服务器端变量,然后绑定它(我是否传递 html 节点并不重要,我有同样的问题)。 页面加载时,控制台中出现“无法将绑定多次应用于同一元素”错误,并且所有使用ifwithtemplate 绑定的html 元素都是空的。

在我看来,整个项目中唯一出现的“applyBindings”是在淘汰源代码中。调试显示它被调用了两次,两次都来自 $(document).ready

当我从代码中删除应用绑定并稍后使用控制台手动调用它时,它可以工作。

【问题讨论】:

  • 我终于通过在绑定处理程序的init 函数中返回{ controlsDescendantBindings: true } 解决了我的问题。见this

标签: javascript jquery knockout.js document-ready


【解决方案1】:

答案已经在 SO:jQuery $(document).ready () fires twice

应用程序的主题是移动/操作 html 元素,并且带有 viewmodel 初始化的标记位于稍后操作的同一 html 视图中。移动到在头部解决的问题中呈现的单独部分。

【讨论】:

    猜你喜欢
    • 2013-07-16
    • 2017-12-17
    • 2013-10-16
    • 2016-09-26
    • 2014-04-13
    • 2014-01-22
    • 2013-09-21
    • 2016-04-29
    • 2018-11-22
    相关资源
    最近更新 更多