首页 新闻 会员 周边 捐助

如何禁止输入框中输入<script></script>脚本

0
悬赏园豆:30 [已解决问题] 解决于 2014-01-22 18:02

我在新增页面中

输入框中写入js脚本,就会报错,怎么禁止输入框中输入js脚本呢?

培培@java的主页 培培@java | 初学一级 | 园豆:38
提问于:2014-01-22 14:18
< >
分享
最佳答案
0

客户端写js键盘事件,正则判断或过滤标签,用这个正则就可以匹配html标签:/<[^<]+>/

收获园豆:30
空明流光 | 初学一级 |园豆:111 | 2014-01-22 14:45

我加<s:textfield name="auditcheckMain.auditName" style="text-transform:uppercase;width:130px"></s:textfield>这个标签还是报错,正则表达式可以。谢谢您。

培培@java | 园豆:38 (初学一级) | 2014-01-22 17:58
其他回答(7)
0

哪里报错?服务端代码报错的话,你就去validateinput=false

[秦时明月] | 园豆:738 (小虾三级) | 2014-01-22 14:24

就是js报错,我感觉应该加过滤器,过滤掉输入危险脚本。

支持(0) 反对(0) 培培@java | 园豆:38 (初学一级) | 2014-01-22 17:50
0

通常是用正则在客户端做验证,方法百度有很多现成例子了

Zery | 园豆:6151 (大侠五级) | 2014-01-22 14:48

嗯,最后用的正则表达式。谢谢您。

支持(0) 反对(0) 培培@java | 园豆:38 (初学一级) | 2014-01-22 17:59
0

文本.Replace("<(.[^>]*)>""");   把这些特殊脚本常用字符替换掉。

大楚打码人 | 园豆:4313 (老鸟四级) | 2014-01-22 14:50

嗯,谢谢您,最后用的js正则表达式。

支持(0) 反对(0) 培培@java | 园豆:38 (初学一级) | 2014-01-22 17:59
-1

F1、提交时对输入框数据进行校验;
F2、提交时对输入数据进行编码;
F3、关闭提交的数据的Validate(WebForms下,将web.config中的验证模式修改为2.0,同时在aspx页上,修改Page指令的ValidateRequest="false")
以上三种,任选一。

幻天芒 | 园豆:37207 (高人七级) | 2014-01-22 15:03

嗯,谢谢您,最后用的js正则表达式。也就是您提议的第一个方案,提交时对输入框数据进行校验。

支持(0) 反对(0) 培培@java | 园豆:38 (初学一级) | 2014-01-22 18:00

@培培@java:实现功能就行,呵呵! 

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2014-01-22 19:44
0

在要提交的页面服务端关闭危险字符验证.然后在该提交到的方法那将所有大于号换成Html编码,就可以了

吴瑞祥 | 园豆:29449 (高人七级) | 2014-01-22 16:35

嗯,谢谢您,最后用的js正则表达式。

支持(0) 反对(0) 培培@java | 园豆:38 (初学一级) | 2014-01-22 18:00
0

你可以了解一下

xss攻击方面的东西 对你有帮助
wolfy | 园豆:2636 (老鸟四级) | 2014-01-22 16:56

恩恩,谢谢

支持(0) 反对(0) 培培@java | 园豆:38 (初学一级) | 2014-01-22 17:48

恩恩,我也看怎么过滤跨站恶意脚本攻击(XSS)了。等有机会一定要实现。

支持(0) 反对(0) 培培@java | 园豆:38 (初学一级) | 2014-01-22 18:01
0

我觉得可以转义

masque | 园豆:210 (菜鸟二级) | 2014-06-26 10:04
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册