您的位置:首页 > 编程语言 > ASP

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

2006-05-04 13:43 666 查看
在document.form1.submit();后加
document.body.innerHtml = "<center> Waiting...</center>"; //当然这里的html代码就由你发挥了,还可把这段写成函数,这样维护就方便了!

这一处理,就让用户在等待提交时不会误以为没提交而重复按提交按钮!

 

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

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

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";

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

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

 

提交后禁用提交按钮(大部分人都是这样做的)
如果客户提交后,按F5刷新怎么办?

使用Session

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

 

 

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

if session("ok")=true then
   response.write "错误,正在提交"
   response.end
end if
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息