当前位置: 首页 > 面试题库 >

如何使AngularJS输出转义HTML

贝阳泽
2023-03-14
问题内容

我从服务器获取JSON数据,其中一个字段包含转义的html(实际上是电子邮件正文):

<html>\r\n<head>\r\n<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r\n</head>\r\n<body dir="auto">\r\n<div>Buonasera, ho verificato i dati sul mio account ed il numero di cell che vi ho fornito</div>\r\n<div><br>\r\n<a (更多…)

我为尝试使用AngularJs渲染而疯狂。

以下内容不起作用:

<div ng-bind-html-unsafe="mail.htmlbody"></div>

我认为这是正常的,因为html实际上已经转义了。我应该先取消转义吗?Angular是否可以通过某些可用服务转义html?

如果我这样使用$ sce:

scope.mail.htmlbody = $sce.trustAsHtml(scope.mail.htmlbody);

显示源html,检查元素可以看到引用的内容。换句话说,在页面中将显示源html,而不是呈现html。也许我缺少什么?


问题答案:

同时$sce引入了服务(角度1.2),ng-bind-html-unsafe放弃了对指令的支持。新指令为ng-bind- html。如果使用此代码,则代码应按文档所述工作:

 <div ng-bind-html="mail.htmlbody"></div>


 类似资料:
  • 我正在使用xslt转换xml文档。我需要使用输出转义来获得我的结果,因为我使用的工作服务器只会输出

  • 1.3.4. 输出转义 另外一个Web应用安全的基础是对输出进行转义或对特殊字符进行编码,以保证原意不变。例如,O'Reilly在传送给MySQL数据库前需要转义成O\'Reilly。单引号前的反斜杠代表单引号是数据本身的一部分,而不是并不是它的本义。 我所指的输出转义具体分为三步: l识别输出 l输出转义 l区分已转义与未转义数据 只对已过滤数据进行转义是很有必要的。尽管转义能防止很多常见安全漏

  • 问题内容: 标题输出很好,但是内容却没有。它里面有一些html,我得到了以下错误:像这样描述:http : //docs.angularjs.org/error/ $ sce:unsafe,这很好,但是那我怎么能在那里输出内容将在其中一些HTML,所以我必须将其设置为或smthn。正确的方法是什么? 编辑: AngularJS版本:1.2 问题答案: 因此解决方法是: 从http://code.a

  • 问题内容: 阅读AngularJS教程第9步后, 我创建了自己的AngularJS过滤器,该过滤器应将布尔数据转换为html。 这是我的过滤器代码: 这是我的HTML代码: 问题是浏览器将返回值按字面显示为: 而不是应显示的图标(或呈现的html)。 这是JSFiddle示例 我认为在此过程中会发生一些消毒。 是否可以关闭此特定过滤器的消毒功能? 我也知道如何通过不从过滤器返回HTML输出而是显示

  • 许多语言使用某种引号绑定字符串,如下所示: “Rob Malda很聪明。” ANTLR 4可以将这样的字符串与如下lexer规则匹配:

  • 问题内容: 我正在寻找将输入中的值限制为4并将4位数字值处理给我的控制器的方法。 问题答案: 可以随时为其发出指令: