Ошибки проверки jQuery не отображаются, когда я не использую кнопку отправки - PullRequest
0 голосов
/ 22 марта 2012

Проверьте этот jsbin .

У меня есть форма с пользовательской кнопкой, которая отправляет ее через ajax (не настоящая кнопка отправки). Я использую jquery-validation для проверки формы и запускаю validate().checkForm() для ее проверки.

Мой вопрос - почему сообщения об ошибках в определенных полях не появляются, когда я делаю это? Они отображаются нормально, когда я использую стандартную кнопку отправки.

Редактировать: мой пример не включает представление ajax, а просто притворяется, что он там.

Ответы [ 3 ]

1 голос
/ 22 марта 2012

Поскольку validate прослушивает событие submit.

Если вы добавите $("form").submit(); в событие щелчка, оно будет запущено.

0 голосов
/ 22 марта 2012

В дополнение к тому, что сказал @weezer, вам нужно связать событие отправки формы с нажатием кнопки, и вы также захотите поместить его внутри самой формы.Прямо сейчас он сидит вне этого.Для будущих обновлений и здравомыслия вам будет проще объединить их в группы.

0 голосов
/ 22 марта 2012

Проверка jquery запускается при отправке стандартной формы.

Возможно, вам понадобится прикрепить обработчик .click к вашей пользовательской кнопке отправки следующим образом:

    var isValid = $("#yourForm").valid();

                if(isValid) {
// Do stuff
    }

Да, у меня есть, и если вы положите:

$("#submit").click(function() { 
    var isValid = $("#form").isValid(); 
    if(isValid) {  
      alert('test'); 
    } 
}); 

Вместо того, что у вас есть и переместите пользовательскую кнопку в форму, проверка работает. http://jsbin.com/ajeyot/9

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...