OnClientClick всегда запускается в asp.net

У меня есть следующий код JQuery в веб-форме asp.net: -

  <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

Пожалуйста помоги.

Всего 1 ответ


Попробуйте это изменение

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

если функция ValidateFields возвращает значение false, событие onclick server не будет выполнено.

Скажите, если это сработало


Есть идеи?

10000