html自动替换文字,用HTML元素替换文本标记
Tomalak..
6
使用正则表达式应该很好:
$('#response').html(function() {
return $(this).text().replace(/\[(\/?\w+)\]/g, "");
});
好处是所有令牌都可以替换,而无需单独命名.
请注意,这为跨站点脚本攻击打开了大门!
如果你想在这个过程中(如转换令牌[b]来)和白名单他们(你肯定要列入白名单他们migitate XSS漏洞),使用回调函数作为替代,就像这样:
$('#response').html(function () {
var map = {
b: "strong",
i: "em",
p: "p"
};
return $(this).text().replace(/\[(\/?)(\w+)\]/g, function ($0, $1, $2) {
if (map.hasOwnProperty($2)) {
return "";
} else {
return $0;
}
});
});
为了使这个jQuery成为答案,这里是如何将所有这些转换为花哨的jQuery插件以供重用:
$.fn.extend({
unphpbb: (function () {
var map = {
b: "strong",
i: "em",
p: "p"
},
tokens = /\[(\/?)(\w+)\]/g,
replacement = function ($0, $1, $2) {
return map.hasOwnProperty($2) ? "" : $0;
},
replaceTokens = function (i, html) {
return html.replace(tokens, replacement);
};
return function () {
return this.html(replaceTokens);
};
})()
});
用作
$("#response").unphpbb();
当然,在服务器上使用bbcode解析器并将正确擦除的HTML发送到客户端是解决此问题的首选方法.在具有上述功能的客户端上执行此操作在各方面都是劣等的.
html自动替换文字,用HTML元素替换文本标记相关推荐
- php中怎么替换文字,php里面怎么替换文字
php里面怎么替换文字2020-07-13 07:15:50 php替换文字的方法:使用[str_replace()]函数用一个字符串替换字符串中的另一些字符即可,语法为[str_replace(fi ...
- python docx 替换文字_查找并替换.docx文件中的文本 - Python
我一直在寻找一种方法来查找和替换docx文件中的文本而运气不佳 . 我已经尝试过docx模块而无法使用它 . 最后,我使用zipfile模块计算了下面描述的方法,并替换了docx存档中的documen ...
- Pandas中的元素替换
# 序列中的元素替换 ser = pd.Series([0, 1, 2, 3, 4, 5]) print(ser.replace(0, 6)) # 单个元素替换 print(ser.replace([ ...
- ps 替换文字_Python操作PPT实现自动查找替换
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:多巴胺爱学习 PS:如有需要Python学习资料的小伙伴可以加点击下 ...
- 拾壹博客拆解,页面元素替换(二)
页面元素替换 首先要做的当然是换成自己风格的站名和内容啦. 1.网站配置 跟踪前端代码后发现配置是来自后端接口,想着既然入库了,那应该有对应的管理页面吧,果然找到了,就是-演示账号不允许操作!那么接下 ...
- Java POI WORD动态插入/替换文字、插入/替换图片
注意事项 word需.docx格式,.doc格式不适用此方案. 书签 书签是word里的一种标记元素,poi能很好的读出标签并进行文字替换.图片替换等.此方案利用书签进行操作,同时也更推荐用书签进行w ...
- 7.DOM(六)①创建create#插入appendChild(子元素)#替换insert,replace#删除DOM对象节点②复制节点.深复制,浅复制cloneNode⑥取消超链接a默认跳转行为
目录 一:创建一个新的DOM节点: 1.麻烦的方法 ①document.createElement()创建一个新的元素 ②把元素加入到list里面 ③创建一个文本节点(就是li里面的文字) ④在new ...
- LeetCode简单题之将每个元素替换为右侧最大元素
题目 给你一个数组 arr ,请你将每个元素用它右边最大的元素替换,如果是最后一个元素,用 -1 替换. 完成所有替换操作后,请你返回这个数组. 示例 1: 输入:arr = [17,18,5,4,6 ...
- python 替换字符串中的元素
python 替换字符串中的元素 def str_replace(old_str,old,new):"""在 old_str 字符串中,把 old 替换成 new:par ...
最新文章
- Android学习笔记进阶九之Matrix对称变换
- R语言包_rCharts
- 汇编语言---冒泡排序
- Hadoop伪分布式环境搭建
- 基于Nginx的负载均衡
- LuoguP3959 宝藏 题解
- 云炬Android开发笔记 3-3基础框架可用性验证
- mysql 并行 更新_MySQL 并行复制(MTS) 从库更新的记录不存在实际却存在
- 关闭Apache的目录浏览功能
- java ajax 获取headers_Ajax获取Response头信息
- Python 学习笔记(五)杂项
- C++ string与vectorfloat类型相互转换之stringstream
- plsqldev 乱码
- 计算机毕业设计之java+ssm基于web的考研助手网站
- 设计心理学之色彩心理学和马斯洛需求层次理论
- [Aria2][Linux]宝塔面板Aria2安装和配置教程
- Element plus:将组件中英文转为中文
- Cocos2d-x制作跨平台太空射击游戏
- 服务器IIS6/IIS7、Nginx、Apache屏蔽垃圾爬虫UA禁止垃圾爬虫,屏蔽指定UA
- ndo入mysql的一些优化