jQuery validate не проверяет ввод по keyup, пока он не потерял фокус один раз - PullRequest
1 голос
/ 20 января 2012

У меня есть форма с проверкой с использованием jQuery validation . Это работает отлично, однако, моя форма всегда содержит значения по умолчанию:

<input type="text" value="0" name="myname" class="required number error">

Когда пользователь впервые изменяет значения в полях ввода, проверка не происходит, пока ввод не потеряет фокус. После этого первого события любое событие keyup / change внутри ввода приведет к проверке.

Как я могу заставить проверку происходить при включении / изменении ВСЕ время, а не после первоначального изменения.

Ответы [ 4 ]

1 голос
/ 03 апреля 2012

Попробуйте этот блок после функции .validate():

$('input').keyup(function(){
    if(!$(this).valid()){
        return false;
    }
});
1 голос
/ 20 января 2012

использовать событие "onkeypress" вместо события "onchange".

0 голосов
/ 20 января 2012

Не могли бы вы поставить свою часть js для инициализации validate()?

Вы пробовали что-то вроде

$('#your_form input').keyUp(function () {
  $(this).parents('form').validate();
});
0 голосов
/ 20 января 2012

В качестве быстрого ответа поместите $('#yourForm input, #yourForm select').live('keyup change', function(e) { }) слушателя в вашу форму, а затем проверьте, не влияет ли это на первый раз, а затем принудительно подтвердите его $('#yourForm").validate();

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