2017-01-31 4 views
0

Я хочу проверить элементы формы при щелчке следующего buttoon в виде шага. Я использую следующий код, который также проверяет все скрытые поля. Нужна помощь. Заранее спасибо ..проверить только видимые элементы в форме

Вот мой код:

$('.msf-form .btn-next').on('click', function() {         
    var parent_fieldset = $(this).parents('fieldset'); 
    var next_step = true; 


    parent_fieldset.find('.is_required').each(function() { 
     if($(this).val() == "") { 
      $(this).focus().css('border','1px solid #F44336'); 
      $(".error-messages-slct").text("Please Select an option in the list").fadeIn(); 
      next_step = false; 
     } 
     else{ 
     $(this).focus().css('border','0px solid #F44336'); 
     $(".error-messages-slct").empty().fadeOut(); 

    } 
    }); 

    parent_fieldset.find('.is_required1').each(function() { 
     if($(this).val() == "") { 
      $(this).focus().css('border','1px solid #F44336'); 
      $(".error-messages-slct1").text("Select an option in the list").fadeIn(); 
      next_step = false; 
     } 
     else{ 
     $(this).focus().css('border','0px solid #F44336'); 
     $(".error-messages-slct1").empty().fadeOut(); 

    } 
    }); 

    if(next_step) { 
     parent_fieldset.fadeOut(400, function() { 
      $(this).next().fadeIn(); 
     }); 
    } 

}); 

ответ

0

вы можете добавить :visible после селекторов. Используйте эту ссылку ..

Use it like this

+0

Ницца, не думал об этом. Боковой вопрос: функционально ли он отличается от свойства отображения? (Я думаю, что я помню видимость: скрытый и дисплей: ни один не отличается) – SREagle

+0

@SREAGLE https://jsfiddle.net/zqpswxbv/ Здесь вы можете увидеть разницу :-) – DomeTune

+0

Спасибо большое за пример, это подтверждает мою половину забытого " знание'. Но я только выяснил, что jQuery's .fadeIn/.fadeOut также задает свойство отображения, поэтому это не имеет значения для вопроса OP. – SREagle

0

Вместо того, чтобы идти по каждому элементу класса «.is_required1' и» .is_required», вы должны сделать это только для этого элемента (ов), который (которые) в настоящее время видимый. Вы можете использовать для этого дополнительный класс или запросить свойство отображения.

Принимая во внимание предложение minksmnm, вы можете использовать find('.is_required:visible') вместо `` find ('. Is_required') `, чтобы выбирать только видимые элементы. В других случаях ваша находка также получает скрытые и проверяет их.

+0

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

Смежные вопросы