我有一些我在JSON中获得的HTML,需要将其注入页面。我使用了$sce.trustAsHtml
并将输出与ngBindHtml
绑定在一起,但显然会删除<select>
和<input>
等标签,这些标签不安全。&#34;有没有办法告诉Angular我真的,实际上是否打算将我要求的HTML完全插入页面?
现在我只有像$scope.$watch('response.htmlBody', function(){$('#container').html($scope.response.htmlBody);}
这样的东西,它似乎按预期工作但看起来像是一个非常糟糕的黑客。
在这种情况下,HTML没有特定于Angular的元素,因此我不必担心再次编译它。
答案 0 :(得分:1)
$sce.trustAsHtml
和ng-bind-html
应该无需删除<input>
和<select>
即可:
$scope.html = $sce.trustAsHtml(data);
<div ng-bind-html="html"></div>