我有这个从服务器端到达的字符串。
<iframe scrolling="no" frameborder="0" allowtransparency="true" height="250" width="300" style="border:0;" src="http://cdn.castplatform.com/scripts/au1324.html?subid=6e6c4c9092a4fd311393cd770c71ff05"></iframe>
我想呈现渲染的html。 当使用$ sce.trustAsHtml时,我进入视图:
<iframe scrolling="no" frameborder="0" allowtransparency="true" height="250" width="300" style="border:0;" src="http://cdn.castplatform.com/scripts/au1324.html?subid=6e6c4c9092a4fd311393cd770c71ff05"></iframe>
我希望得到html渲染(见图片)而不仅仅是从转义字符中剥离的html(如上所述):
我在这里失踪了什么? 这是js代码:
$scope.field_value = $sce.trustAsHtml($sanitize(field_value));
和查看代码:
<div ng-bind-html="field_value"></div>
感谢。
答案 0 :(得分:0)
您需要另一个解码步骤(从https://stackoverflow.com/a/31290632/3563439复制):
app.filter('trusted', ['$sce', function($sce) {
var div = document.createElement('div');
return function(text) {
div.innerHTML = text;
return $sce.trustAsHtml(div.textContent);
};