禁用异步回发更新面板中的按钮

Zo *_*Has 3 javascript asp.net jquery updatepanel

我在一个页面上有多个带有各种asp按钮的更新面板.我想在更新面板中禁用导致回发的按钮,直到它完成.

有没有办法避免使用第三方控件?通过JQuery或任何其他方法?

Mou*_*nad 7

你可以这样做:

CS

//in pageload
//the request is not in postback or async mode
bt1.OnClientClick = "this.disabled = true; " + ClientScript.GetPostBackEventReference(bt1, null) + ";");
Run Code Online (Sandbox Code Playgroud)

注意:您可以使用js函数替换"this.disabled = true",该函数可以更好地处理禁用按钮的操作,也可以显示友好消息.


或这个:

http://msdn.microsoft.com/en-us/library/bb383989.aspx

JS

Sys.WebForms.PageRequestManager.getInstance().add_initializeRequest(CheckStatus);
function CheckStatus(sender, arg)
{
   var postBackElement = arg.get_postBackElement();
   var prm = Sys.WebForms.PageRequestManager.getInstance();
   if (prm.get_isInAsyncPostBack() && postBackElement.id == "btn1") {
      arg.set_cancel(true);
      //display friendly message, etc
   }
}
Run Code Online (Sandbox Code Playgroud)

注意:我对其进行了修改,以便检查按钮的ID.替换"btn1"

祝好运!!