现在的位置: 首页 > 综合 > 正文

如何防止重复页面重复提交

2014年01月13日 ⁄ 综合 ⁄ 共 612字 ⁄ 字号 评论关闭

由于数据需要同步提交到两处,同时更新两个数据库的内容,后台提交是需要连接本地数据库和远程数据库,连接远程数据库比较慢,所以用户以为没有提交,连续点击提交按钮,会导致数据重复提交。
参考了网上的文章, http://recordsome.blogsome.com/2006/07/06/p121/http://www.openitpower.com/wenzhang/104/8225_1.html
由于使用的是ImageButton,所以以上两篇文章没有完全解决问题。
recordsome没有考虑页面中有验证控件的问题,如果页面中存在验证控件,那么修改不合法数据后,不能提交了,需要在desiabled按钮之前判断页面是否验证通过,即可。
当ImageButton被禁用以后,其doPostBack方法即不可用,需要判断一下,否则会报javascript错误。
btnOk.Attributes.Add("onclick", "if (typeof(Page_ClientValidate)=='function' && Page_ClientValidate() == false)return false;document.all('btnOk').disabled=true;if(typeof(__doPostBack)=='function')" + this.GetPostBackEventReference(btnOk) + ";");

抱歉!评论已关闭.