http://jsfiddle.net/xKU5R/La direttiva AngularJS può rilevare il nome della classe dal contenuto dinamico?
Nel caso di cui sopra, mi aspetto con classe CLS essere raccolti con lo stesso comportamento dall'interno ng-repeat (ng-bind-html-non sicuro), e impostare in modo esplicito uno.
<div ng-app="appp">
<div ng-controller="Ctrl">
<ul>
<li ng-repeat="r in data" ng-bind-html-unsafe="r.alink"></li>
</ul>
<div class="cls">External</div>
</div>
</div>
function Ctrl($scope) {
$scope.data = [
{alink: '<span><a class="cls">One</a></span>'},
{alink: '<span><a class="cls">Two</a></span>'}
];
}
angular.module('appp', [])
.directive('cls', function() {
return {
restrict: 'C',
replace: true,
scope: true,
link: function(scope, element, attrs) {
element.bind('click', function() {
alert('Aha!');
});
}
}
});
Mi chiedo cosa faccio di sbagliato qui?
ho un pò sospetto che abbia qualcosa a che fare con la funzione di compilazione del angolare, e sapeva direttiva deve compilare diverso collegamento. Ma non ho capito che deve essere fatto in una direttiva separata, :(Grazie a @shOber per l'aiuto! – simonxy