您的位置: 首页 > 技术文档 > 网络编程 > 防刷新重复提交、防后退方法
歌词同步关键技术 回到列表 基于 Ajax 的无限级菜单
用户名:
密 码: 忘记密码
注册会员 游客参观 论坛帮助
 防刷新重复提交、防后退方法

作者:黑凤凰 时间: 2006-01-12 文档类型:原创 来自:蓝色理想
浏览统计 total:5179 | year:5179 | Quarter:730 | Month:730 | Week:90 | today:7

网页防刷新重复提交、防后退解决方法

提交后禁用提交按钮(大部分人都是这样做的)

如果客户提交后,按F5刷新怎么办?

使用Session

在提交的页面也就是数据库处理之前:

if session("ok")=true then
   response.write "错误,正在提交"
   response.end
end if

数据处理完后,修改session("ok")=false。

数据处理成功马上Redirect到另外一个页面

操作后刷新的确是个问题,你可以使用跳转页面、关闭本页面,如果是有参数据条件来控制的,那就应该好做了,可以直接修改window.location的值,把参数全部改掉,这样就差不多了。

缺点:简单地运用Response.Redirect将不再有效,因为用户从一个页面转到另一个页面,我们都必须用客户端代码清除location.history。注意,这种方法清除的是最后一个访问历史记录,而不是全部的访问记录。 点击后退按钮,再点击后退按钮,你可以看到这时打开的是本页面之前的页面!(当然,这是在你的客户端启用了JavaScript功能的条件下。)

如果客户按后退,怎么办?

防止网页后退--禁止缓存

我们在进行数据库添加操作的时候,如果允许后退,而正巧有刷新了页面,就会再次执行添加操作,无疑这不是我们需要的,像一般网上很多禁止缓存的代码,有时并不可靠,这时你只要在操作的页面加上就可以了,在网页的里指定要定向的新页,再点后退,看是不是不会再退到刚才的操作页面了,实际上已经把这个历史给删除了

ASP:
Response.Buffer = True   
Response.ExpiresAbsolute = Now() - 1   
Response.Expires = 0   
Response.CacheControl = "no-cache"

ASP.NET:
Response.Buffer=true;
Response.ExpiresAbsolute=DateTime.Now.AddSeconds(-1);
Response.Expires=0;
Response.CacheControl="no-cache";

究竟怎样才能"禁用"浏览器的后退按钮?或者“怎样才能防止用户点击后退按钮返回以前浏览过的页面?”

遗憾的是,我们无法禁用浏览器的后退按钮。

防止网页后退--新开窗口

用window.open弹出表单页面,点提交后关闭该页;处理提交的ASP页也是用弹出,设定表单的target,点提交时window.open("XXX.asp","_blank"),然后用JS来提交表单,完成后window.close();
简单的说,就是提交表单的时候弹出新窗口,关闭本窗口。对于window.open()打开的窗口怎么后退?能后退到哪里去?

呵呵,罗嗦了一堆废话,知道怎么处理了么?混合运用客户端脚本和服务器端脚本。

经典论坛讨论贴:
http://www.blueidea.com/bbs/NewsDetail.asp?&id=2345540

出处:蓝色理想
责任编辑:moby

◎进入论坛网络编程版块参加讨论

相关文章 更多相关链接
网页设计推荐色标组图
静态网页加密
用GoLive实现CSS+DIV之一
国内首家中文GoLive CS2视频教程
分析网页文字的字号
作者文章
SQL Sever ——索引简介
全网 本站 论坛
热门搜索:CSS Fireworks 设计比赛 网页制作 Dreamweaver Studio8 Flash
站点最新 站点最新列表
ON SUNDAY
白热化的“谷歌”域名抢注潮
获取用户需求的十大沟通技巧
网页顽主色彩设计指南
蚁群算法js版
人物和背景的融合
FLASH AS实现马赛克效果
用AS画图,自定义多边形及圆形
模仿IE自动完成功能
Tag的自定义类
栏目最新 栏目最新列表
获取用户需求的十大沟通技巧
蚁群算法js版
人物和背景的融合
FLASH AS实现马赛克效果
用AS画图,自定义多边形及圆形
模仿IE自动完成功能
Tag的自定义类
flash缓动效果
firework制作木头效果
JS三级联动选单

蓝色理想版权申明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有。

转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去我站点水印。

特别注意:本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

本文现有 4 条评论 评分:- llllllllllllllllllll + 评分人数: 1 ,平均分: 3.00


staryjk Publish at 2006-4-11 16:49:17 评分3
这样的方法并不是最好的方法,也只可以防止后退一次,不可以防止二次后退.
萧萧小雨 Publish at 2006-3-16 9:50:54
www.mytju.com/classcode/news_readNews.asp?newsID=53
gameoverer Publish at 2006-1-16 9:49:06
强,,

找寻中。。。
收下。
phzzy Publish at 2006-1-13 0:04:13
不喜欢用弹出
您的评论
用户名:  口令:
说明:输入正确的用户名和密码才能参与评论。如果您不是本站会员,你可以注册 为本站会员。
注意:文章中的链接、内容等需要修改的错误,请用报告错误,以利文档及时修改。
不评分 1 2 3 4 5
注意:请不要在评论中含与内容无关的广告链接,违者封ID
请您注意:
·不良评论请用报告管理员,以利管理员及时删除。
·尊重网上道德,遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·本站评论管理人员有权保留或删除其管辖评论中的任意内容
·您在本站发表的作品,本站有权在网站内转载或引用
·参与本评论即表明您已经阅读并接受上述条款
推荐文档 | 打印文档 | 评论文档 | 报告错误  
专业书推荐 更多内容
《Flash第一步系列》
《交互设计之路》
《Dreamweaver 从基础到实践》
《色彩管理》
《网页设计专家门诊》
《职业之道》设计师的技能书
《Flash MX 2004网站开发精粹》