首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >HTML转义字符显示问题“&#39”而不是单引号怎么办?

HTML转义字符显示问题“&#39”而不是单引号怎么办?
EN

Stack Overflow用户
提问于 2018-08-13 00:33:25
回答 1查看 0关注 0票数 0

当我在java代码中保存数据时,我使用

代码语言:txt
复制
HtmlUtils.htmlEscape

转义html字符。

但是,当我取回数据并希望在html中显示它时(我使用Angularjs1.6)。转义字符(’')没有正确显示。我如何使它显示‘而不是'?

EN

回答 1

Stack Overflow用户

发布于 2018-08-13 10:14:58

解决方案1:

你可以使用ng-bind-html指令将其显示为html内容,并对所有html实体进行解码。只需确保在应用程序中包含ngSanitize依赖项。

演示

JavaScript

代码语言:txt
复制
angular.module('app', ['ngSanitize'])
  .controller('Ctrl', function($scope) {
       $scope.html = '"12.10 On-Going Submission of ""Made Up""Samples."';
   });

HTML

代码语言:txt
复制
<body ng-controller="Ctrl">
    <div ng-bind-html="html"></div>
</body>

解决方案2:在控制器中注入$SCE

代码语言:txt
复制
$scope.html = '&quot;12.10 On-Going Submission of &quot;&quot;Made Up&quot;&quot; Samples.&quot;'
$scope.renderHTML = function(html_code)
{
    var decoded = angular.element('<textarea />').html(html_code).text();
    return $sce.trustAsHtml(decoded);
};

HTML

代码语言:txt
复制
<div ng-bind-html="renderHTML(html)"></div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档