Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >AngularJS HTML过滤器

AngularJS HTML过滤器
EN

Stack Overflow用户
提问于 2017-04-26 02:08:37
回答 3查看 57关注 0票数 0

我有一个AngularJS应用程序,我需要对字符串进行过滤(使用过滤器)以显示正确的HTML格式:

这是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$scope.text = "This is <strong>GREAT</strong>";

需要:

这是伟大的

(以及其他HTML标记,如<br>等)

它应该通过过滤器工作,例如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{{text | toHTML}}

我知道ng-bind-html,但我需要它通过过滤器工作,而不是使用ng-bind-html

我发现了一些需要为每个步骤构造过滤器的例子(对于<a>有一个代码,对于<br>有另一个.)

有没有一种方法可以过滤范围元素来处理HTML格式?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-04-26 03:47:31

简单回答is....this无法完成,这就是为什么ngBindHtml首先存在的原因

您要求将{{}}的默认内部编译从插入文本节点更改为插入html元素。

不管您在{{}}中定义了什么,您都不能改变这样一个事实:它总是作为文本节点插入,并且它中的任何html标记都不会转换为dom元素。

这种行为也有一个很好的XSS安全原因。通过插入文本防止从用户输入或损坏的数据源插入恶意脚本、iframe等。

票数 2
EN

Stack Overflow用户

发布于 2017-04-26 02:18:26

创建一个过滤器,将$sce.trustAsHtmled输入作为输出返回。

类似于:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.filter('toHTML', ['$sce', function($sce){
    return function(val) {
        return $sce.trustAsHtml(val);
    };
}])

编辑:如果您只能使用{{}}来呈现,恐怕这不会对您有所帮助。也许您可以创建一个directive来为您进行element级别的修改。

票数 1
EN

Stack Overflow用户

发布于 2017-04-26 02:32:18

如下所示创建此过滤器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
myApp.filter('unsafe', function($sce) {
        return function(val) {
            return $sce.trustAsHtml(val);
        };
    });

像这样使用过滤器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<p ng-bind-html="textCmt | unsafe"></p>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43631114

复制
相关文章
AngularJS HTML DOM
ng-disabled 指令直接绑定应用程序数据到 HTML 的 disabled 属性。
陈不成i
2021/07/23
8160
AngularJS系列(三)——过滤器(filder)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
逝兮诚
2019/10/30
4940
[angularjs] angularjs系列笔记(四)过滤器
过滤器可以使用一个管道字符(|)添加到表达式和指令中,这不就是模板函数吗 <body> <div ng-app="Home"> <div ng-controller="Index"> 格式化字符串为小写 {{myName()|lowercase}}。 格式化字符串为大写 {{myName()|uppercase}}。 格式化数字为货币格式 {{price|currency}}。
唯一Chat
2019/09/10
4830
【AngularJS】—— 9 自定义过滤器
AngularJS另一个特点就是提供了过滤器,可以通过操作UNIX下管道的方式,操作数据结果。   通过使用管道,可以便于双向的数据绑定中视图的展现。   过滤器在处理过程中,将数据变成新的格式,而且可以使用管道这种链式风格,还能接受附加的参数。   实现方式   下面看一下如何定义声明一个过滤器,首先依然是要创建我们自己的模块myAppModule var myAppModule = angular.module("myApp",[]);   接下来在模块的基础上,创建过滤器: myAppModul
用户1154259
2018/01/17
6460
【AngularJS】—— 9 自定义过滤器
AngularJS系列(七)——HTML DOM操作
ng-disabled 指令绑定应用程序数据"mySwitch" 到 HTML 的 disabled 属性。
逝兮诚
2019/10/30
5450
[angularjs] angularjs系列笔记(七)HTML DOM
AngularJs为HTML DOM元素的属性提供了绑定数据的指令 ng-disabled指令 ng-disabled指令直接绑定数据到HTML元素的disabled属性 ng-show指令 ng-show指令隐藏和显示一个HTML元素 ng-hide指令与ng-show相反 <div ng-app="Home"> <div ng-controller="ngDisabledTest"> 测试ng-disabled指令 <button ng-disa
唯一Chat
2019/09/10
3540
angularjs学习第二天笔记---过滤器
 您好,我是一名后端开发工程师,由于工作需要,现在系统的从0开始学习前端js框架之angular,每天把学习的一些心得分享出来,如果有什么说的不对的地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家的点评与赐教。谢谢!
小小许
2018/09/20
1.3K0
谷歌发布 AngularJS 1.0,允许扩展HTML语法
谷歌2012年06月15日发布了一个全新的Web模板——AngularJS 1.0。 谷歌称, AngularJS可以让你扩展HTML的语法,以便清晰、简洁地表示应用程序中的组件,并允许将标准的HTM
张善友
2018/01/29
1.4K0
谷歌发布 AngularJS 1.0,允许扩展HTML语法
angularjs学习第二天笔记---过滤器
 您好,我是一名后端开发工程师,由于工作需要,现在系统的从0开始学习前端js框架之angular,每天把学习的一些心得分享出来,如果有什么说的不对的地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家的点评与赐教。谢谢!
小小许
2018/08/30
1.3K0
angularjs学习第二天笔记---过滤器
前端MVC学习总结(二)——AngularJS验证、过滤器、指令
一、验证 angularJS中提供了许多的验证指令,可以轻松的实现验证,只需要在表单元素上添加相应的ng属性,常见的如下所示: <input Type="text" ng-model="" [name
张果
2018/01/04
15.4K0
前端MVC学习总结(二)——AngularJS验证、过滤器、指令
【AngularJS】 # AngularJS入门
ng-app 指令定义一个 AngularJS 应用程序。 若不声明,将直接显示表达式。
全栈程序员站长
2022/09/15
23.2K0
【AngularJS】 # AngularJS入门
angularjs学习第三天笔记(过滤器第二篇---filter过滤器及其自定义过滤器)
您好,我是一名后端开发工程师,由于工作需要,现在系统的从0开始学习前端js框架之angular,每天把学习的一些心得分享出来,如果有什么说的不对的地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家的点评与赐教。谢谢!
小小许
2018/09/20
1.1K0
AngularJS处理和转换视图中数据的重要工具:过滤器
AngularJS 是一个功能强大的 JavaScript 前端框架,它提供了丰富的内置过滤器,用于处理和转换视图中的数据。过滤器是 AngularJS 的核心特性之一,它可以帮助我们在模板中对数据进行排序、过滤、格式化等操作,从而更好地满足用户需求。本文将详细介绍 AngularJS 过滤器的概念、特性和用法,并提供一些示例来帮助读者更好地理解和应用。
网络技术联盟站
2023/07/05
2000
angularjs学习第三天笔记(过滤器第二篇---filter过滤器及其自定义过滤器)
您好,我是一名后端开发工程师,由于工作需要,现在系统的从0开始学习前端js框架之angular,每天把学习的一些心得分享出来,如果有什么说的不对的地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家的点评与赐教。谢谢!
小小许
2018/08/30
1.3K0
angularjs学习第三天笔记(过滤器第二篇---filter过滤器及其自定义过滤器)
【AngularJS】—— 1 初识AngularJs
怀着激动与忐忑的心情,开始了学习AngularJS的旅程,很久之前就听说了这个前端框架,但是由于自己一直没有从事相关的工作,因此也没有进行学习。这次正好学习AngularJS,直接复习一下前端的知识。目前这里还是弱点,慢慢深入的学习。   AngularJS是Google的优秀的前端框架,目前已经应用于多个产品。   通过w3cschool.cc的学习,简单的了解了下它的使用方法,但是对于原理还没有理解。   AngularJs相对于其他的框架来说,有一下的特性:   1 MVVM   2 模块化
用户1154259
2018/01/17
2.8K0
AngularJS入门心得3——HTML的左右手指令
  在《AngularJS入门心得1——directive和controller如何通信》我们提到“AngularJS是为了克服HTML在构建应用上的不足而设计的。HTML是一门很好的为静态文本展示设计的声明式语言,但要构建WEB应用的话它就显得乏力了。这里AngularJS就应运而生,弥补了HTML的天然缺陷,用于构件Web应用等。”   那么AngularJS如何弥补HTML的缺陷,指令可能是最好的回答。 指令是什么??? 指令就是一些附加在HTML元素上的自定义标记(可以是属性A、元素E、css类
JackieZheng
2018/01/16
3.2K0
AngularJS入门心得3——HTML的左右手指令
AngularJS 的 API:模块 API、指令 API、服务 API、过滤器 API、路由 API
AngularJS 是一款流行的前端 JavaScript 框架,提供了丰富的 API 接口,用于实现前端应用的各种功能。本文将详细介绍 AngularJS 的 API,包括模块 API、指令 API、服务 API、过滤器 API、路由 API 等内容,帮助开发者充分了解和熟练运用 AngularJS 的各项功能。
网络技术联盟站
2023/07/05
2970
AngularJS简介
AngularJS是一个JavaScript矿建,他是一个JavaSscript编写的库。可以通过<script>标签添加到HTML页面。
全栈程序员站长
2022/09/16
5K0
【AngularJS】—— 2 初识AngularJs(续)
前一篇了解了AngularJS的一些简单的使用,这里继续跟着w3c学习一下剩下的内容。   本篇根据w3cschool.cc继续学习AngularJS剩余的内容,包括:   1 事件   2 模块   3 表单   4 数据验证   5 bootstrap CSS风格   6 include包含其他页面   7 应用程序   8 参考手册   首先看一下html的事件   关于html的事件,文中给出了三个例子,点击、隐藏、显示。使用方法基本相同:   先看一下点击的例子,点击按钮后,会触发ng-clic
用户1154259
2018/01/17
2.2K0
AngularJS
scope:单个controller的作用域。可以直接在某controller下的页面引用scope下的变量 rootScope:多个controller作用域的桥梁。可以直接在全局页面引用rootScope下的变量
城市中的游牧民族
2019/02/21
1.4K0

相似问题

AngularJS过滤器返回的HTML错误

23

在HTML中使用AngularJS过滤器

42

AngularJS,附件html的内联过滤器

13

如何创建输出HTML的angularjs过滤器

31

在html属性中使用angularjs过滤器

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文