MVC:http://www.cnblogs.com/wintersun/archive/2012/03/10/2389084.html
asp.net:http://www.cnblogs.com/blsong/archive/2009/12/24/1631144.html
在优快云的论坛上,经常有一些朋友询问有关按钮重复点击的问题.我也做过多次回答,但是为了解决更多朋友的问题,在这里,我把实现方法再次讲解一下,由于本人能力有限,有什么不对的地方,还请各位朋友指教.
首先在<%@ Page %>中添加EnableEventValidation="false".
btnOK是提交按钮的ID,在Page_Load事件中添加回调方法.btnOK_Click就是提交后要实现的服务端代码.整体的实现过程还是比较简单的.
//使按钮不可用并回调服务端事件
protected void Page_Load(object sender, EventArgs e)
{
this.btnOK.Attributes.Add("onclick", ClientScript.GetPostBackEventReference(btnOK, "Click") + ";this.disabled=true; this.value='提交中...';");
}
//按钮处理方法(51aspx.com)
protected void btnOK_Click(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(2000);
ClientScript.RegisterStartupScript(GetType(), "btnCommit", "alert('提交成功!!!');", true);
}
本文介绍了一种在ASP.NET应用程序中防止按钮被重复点击的方法。通过在客户端禁用按钮并显示加载提示,同时利用服务器端回调确保用户体验的同时避免了多次提交的问题。
1058

被折叠的 条评论
为什么被折叠?



