Проверьте, не заполнены ли поля, перед отправкой jQuery для динамических форм.

Добрый день.

У меня есть количество динамических форм, общее количество полей ввода неизвестно,

Я хотел использовать простую функцию проверки, такую ​​как:

function check_submit() {
  if ($(this).val().length == 0) {
    $(":submit").attr("disabled", true);
  } else {
    $(":submit").removeAttr("disabled");
  }
}

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

Какие-либо предложения?

3 ответа

Пожалуйста, попробуйте ниже код:

$('form.classnameofelement').each(function(){
 if($(this).val().length != 0){
    // do somthing;
  }else{
    // do nothing;
  }
});

Дайте мне знать, если какой-либо запрос.

Благодарю.

Вы можете использовать атрибут "required" для браузеров, которые его поддерживают. Для тех, кто этого не делает, вы можете сделать следующее:

Обновите ваши входные данные следующим образом:

<input name="test1" required>
<input name="test2" required>
<input name="test3" required>

Вы можете проверить, все ли входы имеют такие значения:

var unfilled = $('[required]').filter(function() {
    return $(this).val().length === 0;
});

if (unfilled.length > 0) {
    // still unfilled inputs
    unfilled.css('border', '1px solid red');
}

Я оставил это на пару дней, но сегодня мне удалось создать рабочую функцию

$( "form" ).submit(function( event ) {
var empty_fields = [];
$(".chck").each(function(){
   if($(this).val().length !=0 ) {
       return;
   }else{
       empty_fields.push($(this).attr('name'));
       event.preventDefault();}
   });
if(empty_fields){
   alert(empty_fields);
}

});

Мне просто нужно убедиться, что все обязательные поля имеют class="chck", я надеюсь, что кто-то найдет это полезным в будущем.

Другие вопросы по тегам