在优快云的论坛上,经常有一些朋友询问有关按钮重复点击的问题.我也做过多次回答,但是为了解决更多朋友的问题,在这里,我把实现方法再次讲解一下,由于本人能力有限,有什么不对的地方,还请各位朋友指教.
首先在<%@ Page %>中添加EnableEventValidation="false".
btnOK是提交按钮的ID,在Page_Load事件中添加回调方法.btnOK_Click就是提交后要实现的服务端代码.整体的实现过程还是比较简单的.
//
使按钮不可用并回调服务端事件
protected
void
Page_Load(
object
sender,EventArgse)
...
{
this
.btnOK.Attributes.Add(
"
onclick
"
,ClientScript.GetPostBackEventReference(btnOK,
"
Click
"
)
+
"
;this.disabled=true;this.value='提交中...';
"
);
}

//
按钮处理方法(51aspx.com)
protected
void
btnOK_Click(
object
sender,EventArgse)
...
{
System.Threading.Thread.Sleep(
2000
);
ClientScript.RegisterStartupScript(GetType(),
"
btnCommit
"
,
"
alert('提交成功!!!');
"
,
true
);
}
本文介绍了一种简单的方法来避免在ASP.NET Web Forms应用程序中重复点击按钮。通过在客户端禁用按钮并在服务器端处理点击事件,可以有效防止重复提交。这种方法适用于需要等待一段时间才能完成处理的情况。
233

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



