首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

怎么避免提交表单后,刷新页面造成的重复提交

2013-03-25 
怎样避免提交表单后,刷新页面造成的重复提交还是以前我问过的问题,这个到底该怎样解决?比如我一个定义一个

怎样避免提交表单后,刷新页面造成的重复提交
还是以前我问过的问题,这个到底该怎样解决?
比如我一个定义一个全局变量
static int num = 0;
使用服务器控件按钮,在单击事件里面
num++;
单击后,num值为1,F5刷新后num值为2了。

我只想要那种普通的刷新而已,这样的情况怎样避免?
难道不用服务器控件按钮,用ajax异步提交么?
[解决办法]
ajax可以,还有你加个hidden控件,提交前给hidden先赋值1
在page_load里判断hidden是否有值,有值则是提交的,没值就是刷新的
[解决办法]
提交后执行
            this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "dd",
                "<script>alert('编辑成功!');location.href='About.aspx?action=edit&id=" + Request.QueryString["id"] + "';</script>");
[解决办法]
用jquery ajax提交
[解决办法]
1.ajax 
2.session
3.跳转
[解决办法]
或者数据库验证
[解决办法]
F5刷新重复提交上一次的表单,这是个常见的问题。可以用hidden和session做一个同步标识,初始化hidden和session中的标识相同,在页面回传时只需要判断这2个标识是否相同,如果相同则正常执行,同时刷新hidden和session中的标识值;如果2个标识中的值不相等,说明hidden的值是上一次的表单内容,属于刷新行为
[解决办法]
加个时间戳,应该是为了避免F5刷新的问题吧。
[解决办法]
记得HttpRequet["Accept"]的值好像是有区别的,可以用来做判断。
[解决办法]
禁止刷新页面行吗?
[解决办法]
!Page.IspostBack
[解决办法]
jquery.form.js      LZ网上查查这个,能够是页面无刷新提交。。。
[解决办法]

引用:
提交后执行
            this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "dd",
                "<script>alert('编辑成功!');location.href='About.aspx?action=edit&amp;id=" + Request……


这个方法或者1楼的方法,1楼的方法在提交时候判断下隐藏域的值

热点排行