Новая функция: как перебирать все элементы формы, прежде чем возвращать true или false - PullRequest
0 голосов
/ 24 июля 2010

У меня есть новая функция, которую я буду вызывать при нажатии кнопки отправки для формы.Я пытаюсь использовать эту проверку, а не плагин, для опыта.
Как бы я перебрал все формы, чтобы определить, все ли они действительны, прежде чем выйти из функции.Хотя, если все они верны, верните true и продолжайте, в противном случае, если false, оставайтесь в функции isFormValid, пока все формы не будут действительными.Есть идеи?

Вот что у меня есть.

function isFormValid() {

var valid = false;

$('form :input').each(function() {

 var input = $(this);
 label = $(input).prev();

 if (!$.trim(input.val()).length) {
   label.effect('pulsate', { times : 1 }, 400).addClass('required');
   $(":input[value='']:not(.nofocus):visible:enabled:first").focus();
   valid = false;
 }
 else if (input.attr('id') == 'email') {
  if (!isValidEmailAddress(input.val())) {
     label.effect('pulsate', { times : 1 }, 400).addClass('invalid')
     input.val('');
     $(":input[value='']:not(.nofocus):visible:enabled:first").focus();
     valid = false;
   }
  }
 });
}

Спасибо

Ответы [ 2 ]

0 голосов
/ 24 июля 2010

Понял. Нужно было только добавить это вне каждой итерации и изменить исходное var valid = true

if (!valid) {
    return false;
}
else
    return true;
0 голосов
/ 24 июля 2010

с дополнительными параметрами, почему бы не попробовать использовать этот плагин проверки формы ..

...