我正在使用一个Ajax应用程序使用jQuery和AngularJS。
当我使用jQuery的html函数更新div的内容(其中包含AngularJS绑定)时,AngularJS绑定不工作。
这是一个JSFiddle版本的我想要做的。
我有一个动态内容在一个div与ID #dynamicContent,我有一个刷新按钮,将更新此div的内容,当刷新点击。增量工作原理如果我不刷新内容,但刷新后,AngularJS绑定停止工作。
这可能不是有效的AngularJS,但我最初用jQuery构建应用程序,并开始使用AngularJS后,所以我不能迁移所有的AngularJS。任何帮助获得这工作在AngularJS非常感谢。
您需要在HTML字符串上调用$ compile,然后将其插入到DOM中,这样angular才有机会执行绑定。
在你的小提琴,它会看起来像这样。
$("#dynamicContent").html( $compile( "<button ng-click='count = count + 1' ng-init='count=0'>Increment</button><span>count: {{count}} </span>" )(scope) );
显然,$ compile必须注入到你的控制器中才能工作。
阅读更多在$compile
documentation。