OnClientClick 总是在 asp.net 中触发

Posted

技术标签:

【中文标题】OnClientClick 总是在 asp.net 中触发【英文标题】:OnClientClick always fires in asp.net 【发布时间】:2019-03-06 05:30:59 【问题描述】:

我在 asp.net 网页表单中有以下 JQuery 代码:-

  <script type="text/javascript">
     function ValidateFields(id) 
               $("#Rpt1").find("input[type=text]").each(function () 
                if ($.trim($(this).val()) == '') 
                    alert("At least one textbox is empty");

                    $(this).focus(); // focus the element
                    return false;
            
          return false;

            )
         

     </script>

      and on asp.net button click I have the following code:-
      <asp:Button ID="BtnSubmit" runat="server" OnClientClick="if 
      (ValidateFields('BtnSubmit') == false) return(false);" 
      OnClick="BtnSubmit_Click"  Text="Submit" />

问题是它总是触发 onclick 事件,无论条件是真还是假。

我尝试了很多东西 喜欢 OnClientClick="ValidateFields('BtnSubmit');" 和 OnClientClick="ValidateFields('BtnSubmit'); return false;"

但没有任何效果。问题出在jquery的代码中

请帮忙。

【问题讨论】:

OnclientClick and OnClick is not working at the same time?的可能重复 这不是一个重复的问题。以下是正确答案:codeproject.com/Questions/1261977/… 【参考方案1】:

试试这个改变

 <asp:Button ID="BtnSubmit" runat="server" OnClientClick=" return ValidateFields('BtnSubmit')" 
  OnClick="BtnSubmit_Click"  Text="Submit" />

如果 ValidateFields 函数返回 false,则不会执行 onclick 服务器事件。

告诉我这是否有效

【讨论】:

不,那没用。对不起。以下是正确答案:- codeproject.com/Questions/1261977/…

以上是关于OnClientClick 总是在 asp.net 中触发的主要内容,如果未能解决你的问题,请参考以下文章

在 Asp.net VB 中从后面的代码调用 OnClientClick

如何使用带有 asp.net 的 jQuery 进行 onclientclick 回发

ASP.NET OnClientClick="return validate()" 不起作用

在asp.net中,按钮onclick和onclientclick不能用于javascript中的alert和confirm方法。

asp.net动态生成按钮Button控件

ASP.NET 如何在网页上弹出提示窗口?