ASP防止刷新来重复提交数据

2008-4-16 19:00:47 来源:本站 评论:

在ASP编程中,经常会遇到提交后仍然在本页的情况。如果程序中把提交及处理语句都放在一个文件中。可能会遇到下面的问题:

使用者提交后程序已对数据库有了操作结果,如果此时点击浏览器刷新按钮的时候,会发现会重复提交了数据。

三原色实际编程中和参考网络文献,发现有如下几种思路:

1.设置控件变量记录是已提交还是新提交页面。

优点:本页内即可处理完毕。缺点是:需要编程计算页面的提交状态。

2.Response.Redirect

提交后处理完后,再利用以上语句跳转回此页。处理过程都集中在服务器,对于客户来说,不存在任何感觉。

3.JS处理

处理完毕后,再利用JS去跳转。

 Response.Write("<script language='JavaScript'>alert('<font color="#0000ff">弹出窗口!</font>');window.location='<font color="#0000ff">a.aspx</font>';</script>");

以上语句会有一个弹出窗口。

三原色在实际编程中以为能用缓存置为0来解决,如下的语句:

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

在FF下发现根本不能解决问题。以上关于ASP缓存的文章,请点击缓存查看。

 

三原色原创,转载请加注版权链接。

下一页转载蓝色理想的文章,更全面地介绍防止缓存的方法。

5.使用session 见下一页了。


[1] [2] 
正在读取…
我也评两句

   

版权说明:详细说明 网站所属:2006- © Syscy.com 三原色创意科技  京ICP备08101643