问题:
在现有的应用程序中,我添加了一个新功能,该功能使用knockout来显示网格和一些其他信息。我在开始时加载一些数据并准备使用ajax加载其他数据的订阅,在Razor视图中创建viewmodel以注入服务器端变量,然后绑定它(如果我传递html节点没关系,我有同样的问题)。
在页面加载时,控制台中出现“无法多次对同一元素应用绑定”错误,并且所有使用if
,with
或template
绑定的html元素都为空。< / p>
整个项目中唯一出现的“applyBindings”在我看来和淘汰源中。调试显示它从$(document).ready
两次调用当我从代码中删除应用绑定,并稍后使用控制台手动调用它时,它可以工作。
答案 0 :(得分:0)
答案已经在SO:jQuery $(document).ready () fires twice
应用程序的主题是移动/操作html元素,而使用viewmodel初始化的标记位于稍后操作的相同html视图中。移动到单独的部分,在头部解决问题中呈现。