2016-01-21 2 views
-1

У меня есть форма, в которой мне нужно проверить, есть ли у определенных полей контент, однако эти поля не отображаются одновременно. Как проверить, что поля отображаемого div не пусты, и игнорировать те, которые не отображаются.Как проверить, не отображаются ли отображаемые поля ввода?

Вот jsfiddle https://jsfiddle.net/v6snz8k6/3/ - я имею в виду processStep3()

function processStep3() { 
    var measures = $('.meausres').length; 
    if (measures > 0) { 
     alert ("yes"); 
    } else { 
     alert ("no"); 
    } 
} 
+0

Что ваш HTML, что ваш JavaScript или JQuery, чтобы показать/скрыть элементы? Как ваш собственный аттеб? Пожалуйста, ознакомьтесь с инструкциями «[mcve]» для размещения соответствующего кода в ваших вопросах, не просто ссылайтесь на него и ожидайте, что мы последуем за вами. Кстати, у вас, похоже, есть опечатка в вашем селекторе '.meausres', а не' .measures'. –

+0

Весь код находится в jsfiddle. – ChriChri

+0

И все же он должен * быть * в вашем вопросе *. –

ответ

0

У вас есть по крайней мере 3 выпуска:

  1. У вас есть неправильные MEAUSRES имя класса, когда я думаю, что вы хотите использовать меры.
  2. $ ('. Measure'). Length < - будет получать количество элементов .measures, а не длину содержимого.
  3. Вы должны петлю над видимыми элементами только с селектором :visible и .each петли

попробовать с этим:

function processStep3() { 
    var flagEmpty = false; 
    $('.measures:visible').each(function(){ 
     if($(this).val()=="") flagEmpty = true; 
    }); 
    if (!flagEmpty) { 
     alert ("OK! there's no empty inputs"); 
    } else { 
     alert ("oops! there's empty inputs"); 
    } 
} 
Смежные вопросы