クリックイベントハンドラを持つ動的に新しいDOM要素を追加しようとしています。DOMエレメントのクリックイベント機能がangularJsアプリケーションで動作しない
HTML
<div ng-app="miniapp" ng-controller="Ctrl">
<div id="div" ng-click="addingEvent()">DIV </div>
</div>
はJavaScript
var $scope;
var app = angular.module('miniapp', []);
function Ctrl($scope) {
$scope.addingEvent = function(){
var myEl = angular.element(document.querySelector('#div'));
myEl.append('<a ng-click="afterEvent()" href="#">anchor addedd </br> </a>');
};
$scope.afterEvent = function(){
alert('after event');
};
};
Here's the demo:ここでは、コードです。ご覧のとおり、アンカーが追加されている間は、クリックイベントは正しく処理されません。それを修正するには?
あなたは、このような操作するための 'NG-if'として角度のディレクティブを使用していますDOM?可能であれば、直接操作しないでください。 – Duncan
いいえ、コントローラー機能を使用しようとしています –
js fiddleで簡単に確認できますrequiremnet –