Почему не срабатывает submitHandler?

106
08 апреля 2021, 03:30

Скажите пожалуйста, почему не появляется alert после заполнения формы и нажатия на кнопку.

$(document).ready(function() { 
 
  $(".input-tel").inputmask("+7(999)999-99-99", { 
    "clearIncomplete": true 
  }); 
  jQuery.validator.setDefaults({ 
    debug: true, 
    success: "valid" 
  }); 
 
  $("#messageForm").validate({ 
 
    submitHandler: function(form) { 
      alert('Форма отправлена!'); 
    }, 
 
    rules: { 
      input_name: { 
        required: true 
      }, 
      input_tel: { 
        required: true 
      }, 
      input_email: { 
        email: true 
      }, 
      "contacts_check_accept[]": { 
        required: true, 
        minlength: 1 
      }, 
    }, 
    messages: { 
      input_name: { 
        required: "Это поле обязательно к заполнению", 
      }, 
      input_tel: { 
        required: "Это поле обязательно к заполнению", 
      }, 
      input_email: { 
        email: "Введите пожалуйста корректный e-mail" 
      }, 
      "contacts_check_accept[]": "Согласитесь с Политикой конфеденциальности" 
    }, 
    focusCleanup: true, 
    focusInvalid: false, 
    errorClass: "form__input_error", 
    validClass: "form__input_success" 
  }); 
 
});
<form id="messageForm" class="contacts__form form" action="#"> 
 
  <div class="form__group wow slideInUp"> 
    <div class="input-icon"> 
      <img class="lazyload" data-src="../../../../img/icons/input-user.svg" alt=""> 
    </div> 
    <input class="form__control input" type="text" name="input_name" placeholder="Ваше имя*" required autocomplete="off"> 
  </div> 
 
  <div class="form__group wow slideInUp"> 
    <div class="input-icon"> 
      <img class="lazyload" data-src="../../../../img/icons/input-tel.svg" alt=""> 
    </div> 
    <input class="form__control input input-tel" type="text" name="input_tel" placeholder="Телефон*"> 
  </div> 
 
  <div class="form__group wow slideInUp"> 
    <div class="input-icon"> 
      <img class="lazyload" data-src="../../../../img/icons/input-email.svg" alt=""> 
    </div> 
    <input class="form__control input" type="email" name="input_email" placeholder="E-mail" autocomplete="off"> 
  </div> 
 
  <div class="form__group wow slideInUp"> 
    <textarea class="form__control textarea" name="message" placeholder="Ваше сообщение"></textarea> 
  </div> 
 
  <div class="form__group wow slideInUp"> 
    <div class="form__info form__text"> 
      <span class="form__info_required">*</span> Поля, обязательные для заполнения 
    </div> 
    <div class="form__accept"> 
      <label class="check"> 
                <input class="check__input" name="contacts_check_accept[]" type="checkbox" checked required> 
                <span class="check__box"></span> 
            </label> 
      <div class="form__text"> 
        Отправляя сообщение, я принимаю 
        <a href="#" class="form__link">Пользовательское соглашение</a> и согласен с 
        <a href="#" class="form__link">Политикой конфеденциальности</a> данного сайта. 
      </div> 
    </div> 
  </div> 
 
  <div class="form__btn wow slideInUp"> 
    <button type="submit" class="btn btn-lg btn-yellow" id="form_btn"> 
            <img class="lazyload" data-src="../../../../img/icons/btn-icon-telegram-black.svg" alt=""> 
            Отправить заявку 
        </button> 
  </div> 
 
</form>

Answer 1

Уточню свое сообщение в комментариях. Проблема не в плагине, а в коде.

$(".input-tel").inputmask("+7(999)999-99-99", {
  "clearIncomplete": true
});
jQuery.validator.setDefaults({
  debug: true,
  success: "valid"
});

Если поставить дефолтный код, то все работает.

$(".input-tel").inputmask("+7(999)999-99-99");  
READ ALSO
правильно кодировать домен

правильно кодировать домен

есть домен http://wwwschreinerei

96
Удаление контекстного меню окна WPF

Удаление контекстного меню окна WPF

Мне необходимо сделать с помощью WPF окошко, у которого нет заголовкаКазалось бы все просто WindowStyle=None, но есть один большой подводный камень,...

104