jquery ajax对特殊字符进行转义防止js注入使用示例


Posted in Javascript onNovember 21, 2013

在使用ajax进行留言的时候,出现了一个问题.因为留言内容写完之后,通过ajax提交内容,同时使用js把留言的内容添加到页面上来.浏览留言的时候也是通过ajax请求,然后再显示的.这样,如果有人在留言里写入了js语句,这结语句都会被执行.解决办法就是对这些特殊字符进行转义再显示出来.如果在jsp中使用jstl标签,就很简单了.直接使用<c:out value=”${r.content}” />这样就行了,会自动进行转义,其中省略了参数escapeXML=”true”,这是默认的.所以说在显示这些用户提交的内容的时候不要用el表达示,因为el不会自动进行转义,用c:out比较好.而如果也是通过ajax请求,然后再显示的,那就用下面的方法.其实也很简单.

var html="<script>alert('asdfasdf')<\/script>"; 
$("#content").text(html);

那么会发生什么情况 解决办法很简单 就是把这些特殊字符进行转义也就是<变成<>变成> 使用jquery对字符进行转义这样就可以了
<head> 
<script> 
var html="<script>alert('asdfasdf')<\/scipt>"; 
html=$("#x").text(html).html(); 
$("#content").append("<div>"+html+"</div>"); 
</script> 
</head> 
<body> 
<spanid="x"style="display:none"></span> 
<divid="content"></div> 
</body>
Javascript 相关文章推荐
JS 控制CSS样式表
Aug 20 Javascript
Javascript获取窗口(容器)的大小及位置参数列举及简要说明
Dec 09 Javascript
JavaScript的Module模式编程深入分析
Aug 13 Javascript
jQuery表格插件ParamQuery简单使用方法示例
Dec 05 Javascript
轻松实现jQuery添加删除按钮Click事件
Mar 13 Javascript
详解tween.js的使用教程
Sep 14 Javascript
基于JavaScript中标识符的命名规则介绍
Jan 06 Javascript
Vue.js 表单控件操作小结
Mar 29 Javascript
vue.js项目nginx部署教程
Apr 05 Javascript
解决bootstrap模态框数据缓存的问题方法
Aug 10 Javascript
基于vue2.0实现仿百度前端分页效果附实现代码
Oct 30 Javascript
vue-cli4.5.x快速搭建项目
May 30 Vue.js
利用jq让你的div居中的好方法分享
Nov 21 #Javascript
Flex通过JS获取客户端IP和计算机名的实例代码
Nov 21 #Javascript
开发插件的两个方法jquery.fn.extend与jquery.extend
Nov 21 #Javascript
JS连接SQL数据库与ACCESS数据库的方法实例
Nov 21 #Javascript
js中一个函数获取另一个函数返回值问题探讨
Nov 21 #Javascript
js设置组合快捷键/tabindex功能的方法
Nov 21 #Javascript
jtable列中自定义button示例代码
Nov 21 #Javascript
You might like
第十节--抽象方法和抽象类
2006/11/16 PHP
Memcached常用命令以及使用说明详解
2013/06/27 PHP
php简单实现屏蔽指定ip段用户的访问
2015/04/29 PHP
ThinkPHP模板循环输出Volist标签用法实例详解
2016/03/23 PHP
PHP实现在对象之外访问其私有属性private及保护属性protected的方法
2017/11/20 PHP
php对象工厂类完整示例
2018/08/09 PHP
javascript 自定义事件初探
2009/08/21 Javascript
JavaScript获取当前页面上的指定对象示例代码
2014/02/28 Javascript
jQuery实现平滑滚动的标签分栏切换效果
2015/08/28 Javascript
JavaScript脚本判断蜘蛛来源的方法
2015/09/22 Javascript
分享两款带遮罩的jQuery弹出框
2015/12/30 Javascript
JS动态增删表格行的方法
2016/03/03 Javascript
js/jQuery实现全选效果
2019/06/17 jQuery
Node.js API详解之 tty功能与用法实例分析
2020/04/27 Javascript
JS实现选项卡插件的两种写法(jQuery和class)
2020/12/30 jQuery
[03:17]2014DOTA2 国际邀请赛中国区预选赛 四强专访
2014/05/23 DOTA
[01:00:06]加油DOTA_EP01_网络版
2014/08/09 DOTA
[00:57]英雄,你的补给到了!
2020/11/13 DOTA
python实现保存网页到本地示例
2014/03/16 Python
Linux RedHat下安装Python2.7开发环境
2017/05/20 Python
Collatz 序列、逗号代码、字符图网格实例
2017/06/22 Python
Python序列化基础知识(json/pickle)
2017/10/19 Python
动态规划之矩阵连乘问题Python实现方法
2017/11/27 Python
Python3 Tkinter选择路径功能的实现方法
2019/06/14 Python
在Python IDLE 下调用anaconda中的库教程
2020/03/09 Python
Django使用list对单个或者多个字段求values值实例
2020/03/31 Python
基于python实现计算两组数据P值
2020/07/10 Python
使用Pytorch搭建模型的步骤
2020/11/16 Python
翻新二手苹果产品的网络领导者:Mac of all Trades
2017/12/19 全球购物
医务人员自我评价
2014/01/26 职场文书
《在山的那边》教学反思
2014/02/23 职场文书
秋收起义观后感
2015/06/11 职场文书
2015高中教师个人工作总结
2015/07/21 职场文书
银行培训心得体会范文
2016/01/09 职场文书
mysql部分操作
2021/04/05 MySQL
mysql如何能有效防止删库跑路
2021/10/05 MySQL