首页 新闻 会员 周边

怎样防止用户点击浏览器上的刷新,后退,前进按钮?

0
[已关闭问题] 关闭于 2011-12-07 15:08

有时候用户做这些操作,会出现一个危险的事情发生,如果重复插入等等,欢迎大家提意见。

lorgine的主页 lorgine | 菜鸟二级 | 园豆:245
提问于:2010-09-10 11:12
< >
分享
所有回答(5)
0

担心重复插入的问题, 最好是在 做完提交动作后就 将数据清空,界面上应该要做验证的,空数据不能提交的。

HUHU慈悲 | 园豆:9973 (大侠五级) | 2010-09-10 12:28
0

没有太大作用,就算你隐藏了工具栏,他们还是会使用快捷键,backspace,F5啊之类的。

你还需要加强这些键的校验,这就是噩梦的开始。

你还是把重心放在后台的数据校验上吧,那个也是你的强项。

防止重复

Virus-BeautyCode | 园豆:1619 (小虾三级) | 2010-09-10 12:59
0

1.关于后退,将Cache时间设置为0。

2.关于刷新,由于刷新会将上次提交的数据重新模拟提交,一次可以在后台和前天对于每个页面添加票据,前天票据可用HiddenField,后台票据可用Session。回发后,对两个值进行比较,如果相同,则说明是普通的提交,否则为通过刷新引起的提交。 (页面写道前台前,要确保对这票据重新生成,以区别于上次提交的票据)

这个票据可以用用户ID+当前时间来确定,也可以用其他的方式生成。

nabber | 园豆:479 (菜鸟二级) | 2010-09-10 13:14
另外,对于重复插入的问题最后在添加之前,最好添加服务器端的验证,(主键等形式)
支持(0) 反对(0) nabber | 园豆:479 (菜鸟二级) | 2010-09-10 13:16
0

访问这个页面时,做此清楚访问缓存的操作。

Astar | 园豆:40805 (高人七级) | 2010-09-10 15:38
0

ajax默认是没有前进后退的功能的,刷新那得还你js 是哪个事件了

.net 的ispostback可以判断

慧☆星 | 园豆:5640 (大侠五级) | 2010-09-10 20:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册