Angular 1.5
我的$ http数据服务也返回带有指令的html编码文本,例如文本中的ng-click。
我需要显示html并激活ng-click指令。
要显示我这样做并且它有效,但是ng-clicks不起作用:
<div class="mt10" ng-repeat="row in aqdas.Paragraphs" ng-cloak>
<span ng-bind-html="TrustDangerousSnippet(row.Text)" >
{{row.Text}}
</span>
</div>
这是TrustDangerousSnippet:
$scope.TrustDangerousSnippet = function (text) {
var val = $sce.trustAsHtml(text);
return val;
};
如何编辑TrustDangerousSnippet,以便在$ http下载代码后打开文本中的ng-click?
答案 0 :(得分:2)
将此指令也与您的代码一起使用。在指令中绑定html元素使用complie。它会工作..
.directive('compile', ['$compile', function ($compile) {
return function(scope, element, attrs) {
scope.$watch(
function(scope) {
return scope.$eval(attrs.compile);
},
function(value) {
element.html(value);
$compile(element.contents())(scope);
}
);
};
}])
答案 1 :(得分:1)
我添加了包含Suresh的指令,并将HTML更改为这样,现在可以使用了。 (添加&#39;编译&#39;到绑定元素)
<div class="mt10" ng-repeat="row in aqdas.Paragraphs" ng-cloak>
<span compile ng-bind-html="TrustDangerousSnippet(row.Text)" >
{{row.Text}}
</span>
</div>