私はjQueryとAngularJSの両方を使用してAjaxアプリに取り組んでいます。
jQueryの関数を使用してdivのコンテンツ(AngularJSバインディングを含む)を更新するhtml
と、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を持つdiv内に動的コンテンツがあり、#dynamicContent
更新がクリックされたときにこのdivのコンテンツを更新する更新ボタンがあります。コンテンツを更新しない場合、インクリメントは期待どおりに機能しますが、更新後、AngularJSバインディングは機能しなくなります。
これはAngularJSでは有効ではない可能性がありますが、最初はjQueryを使用してアプリケーションを構築し、後でAngularJSを使用し始めたため、すべてをAngularJSに移行することはできません。AngularJSでこれを機能させるための助けをいただければ幸いです。