Можно ли узнать с помощью jQuery-validate, когда проверка одного поля не удалась - PullRequest
3 голосов
/ 05 мая 2011

У меня есть форма, в которой мне нужно выполнить дополнительную обработку, когда проверка одного поля не удалась (например, когда пользователь выбрасывает из поля, но форма не была отправлена), как я могу подключиться к этому событию JQuery-Validate?

Ответы [ 3 ]

3 голосов
/ 05 мая 2011

Чтобы узнать, не было ли ошибки в форме, используйте:

if(!$("#form0").valid()){
  //There was one or more errors in the form
}

Чтобы узнать, есть ли у определенного элемента ошибка, используйте:

if(!$("#form0").validate().element($("#text1"))){
  //There where some error in #text1
}

(Обратите внимание, чтоэти два метода также вызовут проверки)

Надеюсь, это поможет.Приветствия

2 голосов
/ 07 августа 2012

Я использую комбинацию переопределения выделения / отключения подсветки самостоятельно.

//Update the validator's highlight/unhighlight
$.validator.setDefaults({
  ignoreTitle:true
  ,highlight: function (element) {
    var el = $(element);
    //TODO: Handle UI changes, add/remove classes
    el.trigger("validate.fail");
  }
  ,unhighlight: function (element) {
    var el = $(element)
    //TODO: Handle UI changes, add/remove classes
    el.trigger("validate.success")
  }
});

Теперь я могу просто привязать метод validate.fail ...

$("#myInputElement").bind("validate.fail",function(){
  //TODO: Do something with this knowledge.
});

ПРИМЕЧАНИЕ: я делал это в прошлом, чтобы интегрировать jQuery с соглашениями по загрузке пользовательского интерфейса ... это работало довольно хорошо.

1 голос
/ 05 мая 2011

Когда вы настраиваете валидацию, вы должны сохранять объект валидатора.Вы можете использовать это для проверки отдельных полей.

<script type="text/javascript">
var _validator;
$(function () {
    _validator = $("#form").validate();   
});
function doSomething() {
    _validator.element($('#someElement'));
}
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...