angularJS在进行数据绑定时默认是会以文本的形式输出,也就是对你数据中的html标签不进行转义照单全收,这样提高了安全性,防止了html标签中的注入攻击,但有些时候还是需要的,特别是从数据库读取带格式的文本时,无法正常的显示在页面中。
而要对html进行转义,则要在数据绑定的html标签中使用ng-bind-html属性。
页面:
<div id="details" style="display:none">
<h2 class="text-center">{{Detailsnews.Title}}</h2>
<p ng-bind-html="Detailsnews.Content | trustHtml"></p>
</div>
Angular:
app.filter('trustHtml', function ($sce) {
return function (input) {
return $sce.trustAsHtml(input);
}})