jQuery Validate: обязательное поле пустое, но проверяет true - PullRequest
0 голосов
/ 24 января 2012

Вот что я вижу в своей веб-консоли:

validationRules.rules.NameOnCard.required //true

document.OForm.NameOnCard.value //""

$("#OForm").validate().element("#NameOnCard") //true

Поле обязательно для заполнения, оно пустое и является действительным. Что я делаю не так?

В качестве предыстории, я программно делаю платежную информацию не обязательной, пока форма не покажет баланс, затем я сделаю это обязательным. Если я удаляю код if / then, он корректно проверяется. Но из того, что я могу сказать, я правильно говорю валидатору, что это поле теперь обязательно, поэтому пустое поле должно быть проверено на false, да?

Ответы [ 2 ]

1 голос
/ 24 января 2012

Вы можете проверить правильность формы, выполнив следующие действия:

if($("#OForm").valid()){
 // valid
}
0 голосов
/ 24 января 2012

Ваш обязательный параметр должен быть условным, как это:

NameOnCard: {
required: function(element){
      var fooValue = $('#fooVar').val();
      if (isNaN( fooValue )){
          return false; 
      } else {
        if ( fooValue > 0) {
           return true;
        } else {
           return false;
        }
      }
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...