Я относительно не знаком с угловыми и после часов отладки, я обнаружил некоторую несовместимость при добавлении jquery. Директива отлично работает без перерывов, но JQuery с ним:/jquery breaks угловая директива
Вот plnkr:
http://plnkr.co/edit/sRwqrWV1ha4Dp7lvsSAg?p=preview
var app = angular.module('plunker', []);
app.directive('dynamic', function ($compile) {
return {
restrict: 'A',
replace: true,
link: function (scope, ele, attrs) {
scope.$watch(attrs.dynamic, function(html) {
ele.html(html);
$compile(ele.contents())(scope);
});
}
};
})
app.controller('MainCtrl', function($scope, $sce, $compile) {
$scope.trustedHtml = $sce.trustAsHtml('<button ng-click="testAlert()">Submit</button>');
$scope.testAlert = function() {
alert('testing');
};
});
Может быть, я не понял вопрос. Но зачем вообще использовать trustAsHtml. Ваш плункер отлично работает без него. JQuery присутствует или нет. http://plnkr.co/edit/vPBFWfKV7toPquQFtozH?p=preview – mainguy