Проверка jQuery на основе типа ввода = радио / флажок / выберите - PullRequest
0 голосов
/ 25 мая 2018

Вот мой код

$('.f1 .btn-next').on('click', function() {
    var parent_fieldset = $(this).parents('fieldset');
    var next_step = true;
    // navigation steps / progress steps
    var current_active_step = $(this).parents('.f1').find('.f1-step.active');
    var progress_line = $(this).parents('.f1').find('.f1-progress-line');

    // fields validation
    parent_fieldset.find('input[type="text"], select').each(function() {
         if( $(this).val() == "" ) {
            $(this).addClass('input-error');
            next_step = false;
        }
        else {
            $(this).removeClass('input-error');
        }
    });
    // fields validation

Это своего рода Валидация, которую я использую в моей Многошаговой Форме , здесь проверка входного текстового поля работает отлично, но для выбора/ Флажок / Радио, он не работает. Пожалуйста, помогите мне исправить код.

Я уже пробовал этот код, но он не работает для поля выбора -

parent_fieldset.find('input[type="text"], select', '.sys').each(function() {

Ответы [ 3 ]

0 голосов
/ 25 мая 2018

Вы говорите, что вам нужны только входы с типом текста, вот что вы получаете.Если вы хотите вводить каждый тип, просто удалите спецификацию типа из селектора, например:

parent_fieldset.find(':input').each(function() {

}

Редактировать: расширение jQuery :input будет включать элементы select, а input - нет.Документ JQuery здесь .

0 голосов
/ 27 мая 2018

Так что это мой последний код, который отлично работает со всеми полями выбора, радио, флажка

parent_fieldset.find('input[type="text"], select', '.sys').each(function(key, value) {
0 голосов
/ 25 мая 2018

Попробуйте следующий код.

  parent_fieldset.find(':input').each(function() {
      //Your code goes here.
     }
//Try this one another way to validate form fields

     var allFormData = $('#myForm').serializeArray();
       for(var dataIndex = 0 ; dataIndex < allFormData.length ; dataIndex++){
         if(allFormData[dataIndex].value == ""){
          $("#myForm input[name="+allFormData[dataIndex].name+"]").addClass("input-error");
         }else{
            $("#myForm input[name="+allFormData[dataIndex].name+"]").removeClass('input-error');
         }
       }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...