当我在java代码中保存数据时,我使用
HtmlUtils.htmlEscape
转义html字符。
但是,当我取回数据并希望在html中显示它时(我使用Angularjs1.6)。转义字符(’
,'
)没有正确显示。我如何使它显示‘而不是'
?
发布于 2018-08-13 10:14:58
解决方案1:
你可以使用ng-bind-html指令将其显示为html内容,并对所有html实体进行解码。只需确保在应用程序中包含ngSanitize依赖项。
演示
JavaScript
angular.module('app', ['ngSanitize'])
.controller('Ctrl', function($scope) {
$scope.html = '"12.10 On-Going Submission of ""Made Up""Samples."';
});
HTML
<body ng-controller="Ctrl">
<div ng-bind-html="html"></div>
</body>
解决方案2:在控制器中注入$SCE
$scope.html = '"12.10 On-Going Submission of ""Made Up"" Samples."'
$scope.renderHTML = function(html_code)
{
var decoded = angular.element('<textarea />').html(html_code).text();
return $sce.trustAsHtml(decoded);
};
HTML
<div ng-bind-html="renderHTML(html)"></div>
https://stackoverflow.com/questions/-100008781
复制相似问题