2013-01-21 112 views
1

我禁用了使用JavaScript代码的按钮,但我的服务器端事件没有解雇..任何想法?ASP.Net按钮禁用

Javascript 
------------------------ 

     function DisableButton() { 
      if (typeof (Page_ClientValidate) == 'function') { 
       Page_ClientValidate(); 
      } 
      if (Page_IsValid) { 
       document.getElementById('<%=BtnToprimaryValidation.ClientID%>').disabled = true; 
       document.getElementById('<%=BtnToprimaryValidation.ClientID%>').value = 'Please wait ...'; 
      } 
     } 

ASP.Net 
------------------------- 
<asp:Button ID="BtnToprimaryValidation" runat="server" 
         meta:resourcekey="BtnToprimaryValidationResource1" 
         CssClass="submitButton"> 

Server Side c# 
--------------------------- 

     protected void Page_Load(object sender, EventArgs e) 
     { 
      BtnToprimaryValidation.Click += BtnToprimaryValidationClick; 
     } 
     protected void BtnToprimaryValidationClick(object sender, EventArgs e) 
     { 
     } 

由于事先 拉胡尔·[R

回答

0

事件不火上禁用的项目

,而不是禁用的,你必须改变你的DisableButton方法return false,就像这样:

function DisableButton() { 
     if (typeof (Page_ClientValidate) == 'function') { 
      Page_ClientValidate(); 
     } 
     if (Page_IsValid) { 
      document.getElementById('<%=BtnToprimaryValidation.ClientID%>').value = 'Please wait ...'; 
     } 
     else { 
      return false; 
     } 
} 
0

正如前面回答012所述,事件不会在禁用的按钮上触发

使用短超时先触发事件,然后禁用按钮:

setTimeout(function(){ 
document.getElementById('<%=BtnToprimaryValidation.ClientID%>').disabled = true; 
}, 100); 

就像我建议在this question