如何让AngularJS输出转义HTML
How to have AngularJS output escaped HTML
我正在从服务器获取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
服务(angular 1.2)的同时,放弃了对ng-bind-html-unsafe
指令的支持。新指令是ng-bind-html
。如果你使用这个,代码应该像文档一样工作:
<div ng-bind-html="mail.htmlbody"></div>
使用此指令:
<div ng-bind-html="mail.htmlbody"></div>
别忘了在你的应用程序模块上使用角消毒液。
请在此处查看:http://docs.angularjs.org/api/ngSanitize
- 将c#视图模型转换为javascript模型时转义HTML标记
- Regex以转义HTML标记
- 需要使用Java编码/转义HTML字符串,并在JavaScript中解码HTML字符串
- 如何让AngularJS输出转义HTML
- 在某些浏览器中,jquery.html()正在取消转义html字符
- 在 JavaScript 中准确取消转义 HTML 实体
- 为什么使用替换来取消转义 html 标签也会去除所有其他 html 标签
- backbone.js正在转义html
- DojoToolkit:如何转义HTML字符串
- 转义 $(“html”).ajaxError() 在其中一个 $.ajax() 调用中
- Meteor React中的转义HTML标签
- 转义HTML标记.字符集编码可能出现的任何问题
- Select2不会转义HTML或javascript
- 我不想转义HTML标记,也不想在Angular应用程序中使用对象文字
- 我不想在Angular应用程序中转义HTML标记
- 转义HTML和Javascript之间的特殊字符
- 如何在laravel 4.2中使用handlebar js转义html
- 在Javascript中转义html属性中的双引号
- 转义HTML标记属性中的双引号
- 在$scope变量中转义HTML的快速方法