【问题标题】:ASP.Net button DisableASP.Net 按钮禁用
【发布时间】:2013-01-21 12:39:08
【问题描述】:

我正在使用 javascript 代码禁用按钮,但我的服务器端事件没有触发..有什么想法吗?

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

【问题讨论】:

    标签: javascript asp.net button


    【解决方案1】:

    事件不会在禁用的项目上触发

    您必须将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;
            }
    }
    

    【讨论】:

      【解决方案2】:

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

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

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

      就像我在 this question 上建议的那样。

      【讨论】:

        猜你喜欢
        • 2011-02-02
        • 2011-02-23
        • 1970-01-01
        • 2012-05-26
        • 2012-11-12
        • 1970-01-01
        • 1970-01-01
        • 2018-07-11
        • 1970-01-01
        相关资源
        最近更新 更多