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 相关文章推荐
文字幻灯片
Jun 26 Javascript
编写针对IE的JS代码两种编写方法
Jan 30 Javascript
JS的get和set使用示例
Feb 20 Javascript
html的DOM中document对象forms集合用法实例
Jan 21 Javascript
通过点击jqgrid表格弹出需要的表格数据
Dec 02 Javascript
浅谈javascript中的call、apply、bind
Mar 06 Javascript
功能强大的Bootstrap效果展示(二)
Aug 03 Javascript
全面了解函数声明与函数表达式、变量提升
Aug 09 Javascript
基于vue+ bootstrap实现图片上传图片展示功能
May 17 Javascript
微信小程序实现左右联动的实战记录
Jul 05 Javascript
JavaScript内置对象math,global功能与用法实例分析
Jun 10 Javascript
mapboxgl区划标签避让不遮盖实现的代码详解
Jul 01 Javascript
利用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
用PHP实现Ftp用户的在线管理的代码
2007/03/06 PHP
在windows服务器开启php的gd库phpinfo中未发现
2013/01/13 PHP
yii2安装详细流程
2018/05/23 PHP
基于jquery实现的可以编辑选择的下拉框的代码
2010/11/19 Javascript
详解JavaScript函数绑定
2013/08/18 Javascript
jQuery向上遍历DOM树之parents(),parent(),closest()之间的区别
2013/12/02 Javascript
jquery制作select列表双向选择示例代码
2014/09/02 Javascript
JavaScript 作用域链解析
2014/11/13 Javascript
node.js中的fs.lchmodSync方法使用说明
2014/12/16 Javascript
JavaScript中的方法调用详细介绍
2014/12/30 Javascript
JavaScript中iframe实现局部刷新的几种方法汇总
2016/01/06 Javascript
深入理解JS正则表达式---分组
2016/07/18 Javascript
javascript 将共享属性迁移到原型中去的实现方法
2016/08/31 Javascript
使用React实现轮播效果组件示例代码
2016/09/05 Javascript
BootStrap glyphicon图标无法显示的解决方法
2016/09/06 Javascript
VueJS组件之间通过props交互及验证的方式
2017/09/04 Javascript
搭建element-ui的Vue前端工程操作实例
2018/02/23 Javascript
浅析Visual Studio Code断点调试Vue
2018/02/27 Javascript
jQuery实现简单弹幕制作
2020/12/10 jQuery
[01:01:13]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第三场
2018/04/06 DOTA
Python实现将json文件中向量写入Excel的方法
2018/03/26 Python
神经网络(BP)算法Python实现及应用
2018/04/16 Python
Python 给某个文件名添加时间戳的方法
2018/10/16 Python
详解python执行shell脚本创建用户及相关操作
2019/04/11 Python
在django中自定义字段Field详解
2019/12/03 Python
Python3操作读写CSV文件使用包过程解析
2020/04/10 Python
基于Python第三方插件实现西游记章节标注汉语拼音的方法
2020/05/22 Python
请说出几个常用的异常类
2013/01/08 面试题
C#如何调用Word并打开一个Word文档
2013/05/08 面试题
linux面试相关问题
2012/08/11 面试题
init进程的作用
2015/08/20 面试题
高级Java程序员面试要点
2013/08/02 面试题
小松树教学反思
2014/02/11 职场文书
民间借贷被告代理词
2015/05/23 职场文书
创业计划书之蛋糕店
2019/08/29 职场文书
深入理解go缓存库freecache的使用
2022/02/15 Golang