我正在从我的REST API发布内容。
我得到的内容:“<p>test post body</p>
”
首先,我正在解析纯文本
data[i].postBody = $sce.trustAsHtml(data[i].postBody);
在我这样做并尝试使用ng-bind-html
显示之后<span ng-bind-html="value.postBody"></span>
并继续显示为html。
输出:
<p>test post body</p>
我无法在没有html标签的情况下显示文字
请帮帮我!
答案 0 :(得分:4)
使用htmlDecode函数首先转义HTML实体
HTML:
<div ng-bind-html="value.postBody"></div>
JS:
angular.module('ngApp', ['ngSanitize'])
.controller('controller1', ['$scope','$sce', function($scope, $sce) {
// Some Code ...
...
...
function htmlDecode(input) {
var e = document.createElement('div');
e.innerHTML = input;
return e.childNodes.length === 0 ? "" : e.childNodes[0].nodeValue;
}
data[i].postBody = $sce.trustAsHtml(htmlDecode(data[i].postBody));
...
...
// Some Code ...
}]);