我正在使用jQuery和AngularJS处理Ajax应用程序。AngularJS + JQuery:如何获取在angularjs中工作的动态内容
当我使用jQuery的html
函数更新div的内容(其中包含AngularJS绑定)时,AngularJS绑定不起作用。
以下是什么,我试图做代码:
$(document).ready(function() {
$("#refreshButton").click(function() {
$("#dynamicContent").html("<button ng-click='count = count + 1' ng-init='count=0'>Increment</button><span>count: {{count}} </span>")
});
});
</style><script src="http://docs.angularjs.org/angular-1.0.1.min.js"></script><style>.ng-invalid {
border: 1px solid red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="">
<div id='dynamicContent'>
<button ng-click="count = count + 1" ng-init="count=0">
Increment
</button>
<span>count: {{count}} </span>
</div>
<button id='refreshButton'>
Refresh
</button>
</div>
我与ID #dynamicContent
一个div里面的动态内容,和我有一个刷新按钮,将更新内容点击刷新时该div的值。如果我不刷新内容,Increment按预期工作,但在刷新后,AngularJS绑定停止工作。
这可能在AngularJS中无效,但我最初使用jQuery构建应用程序,稍后开始使用AngularJS,所以我无法将所有内容都迁移到AngularJS。任何帮助在AngularJS中实现这个功能都非常感谢。
在这个 功能中使用JQuery有什么特别的理由吗?由于这很好,很容易被角度覆盖: –
2012-08-02 05:48:32
这只是我的真实用例的简化版本来显示问题。在实际应用程序中,动态内容是由grails taglib生成的,它以html的形式传递给jquery。所以我无法将grails taglib中的所有逻辑都移植到angularjs中,以使其成为纯粹的angularjs。 – Raja 2012-08-02 14:57:50
@ pkozlowski.opensource,那个链接已经死了?你也应该加入http://outdoors.stackexchange.com/ :) – Liam 2014-02-14 11:09:53