Исключить конкретный селектор формы выбора класса

#jquery

#jquery

Вопрос:

Я пытаюсь проверить, все <select> ли на странице, кроме той, которая имеет класс « lastDays «, имеют значение 0.

Я пробовал это:

 if ($('.dropFilter input').val()=='' amp;amp; $('select[class!='lastDays']').val()==0){
...}   
  

И это:

 if ($('.dropFilter input').val()=='' amp;amp; $('select').not('.lastDays').val()==0){
...} 
  

Ни одна из работ, так как, когда все select имеют значение 0, но «lastDays» имеет значение 1, он не выполняет операции внутри условия.

РЕДАКТИРОВАТЬ: фрагмент HTML:

 <div class="dropFilterSelect">Sólo registros de: <select name="lastdays_select" class="filterOptionList lastDays"> <option value="0">Últimos 7 días</option> <option value="1">Últimos 15 días</option> <option value="2">Últimos 30 días</option><option value="3">Sin límite de días</option> </select>
                                </div>
                                <div class="dropFilterSelect">Entre los días: <div style="width:70.5%; display: inline-block; float:right;"><input type="date" id="ar_fromDate" name="ar_fromDate" class="datepicker" value="" style="margin:2px 10px 3px 0; float:none; width:120px;"> y <input type="date" id="ar_toDate" name="ar_toDate" class="datepicker" value="" style="margin: 2px 0 3px 10px; float:none; width:120px;"></div>
                                </div>
                                <div class="dropFilterSelect">Horario:<select id="timetable_select" name="timetable_select" ><?php echo $turn_conf_filter_list; ?></select>
                                </div>
                            <div class="dropFilterSelect">Ciclo:<select id="cl_course" name="cl_course" ><?php echo $course_conf_filter_list; ?></select>
                            </div>
                            <div class="dropFilterSelect">Asignatura:<select id="cl_subject" name="cl_subject" ><?php echo $subject_conf_filter_list; ?></select>
                            </div>
                            <div class="dropFilterSelect">Clase:<select id="cl_class" name="cl_class" ><?php echo $class_conf_filter_list; ?></select>
                            </div>
  

Комментарии:

1. Пожалуйста, добавьте свой HTML-код в вопрос или JSfiddle

2. вы вызываете .val() над коллекцией, в результате возвращается значение первого ..!

3. @RajaprabhuAravindasamy, есть ли какой-либо способ, кроме .each, указать ему, чтобы проверить общее количество совпадающих элементов на странице? Я собираюсь попробовать с . каждый метод

4. что вы подразумеваете под классом ? наличие класса или содержится в каком-либо элементе, имеющем класс?

5. @Biomehanika вы можете использовать .filter() ..

Ответ №1:

Я думаю, что это будет сделано, если все входные данные являются братьями и сестрами:

 $('.lastDays').siblings('input').each(function(){
    if($(this).val()!=0){
        alert('not all zero');
        zero=false;
        return false;
    }
    else{
        zero=true;
    }
});
if(zero){
    alert('all zero');
}
  

если они не являются братьями и сестрами, скажите мне, и я изменю его на другой способ!

Комментарии:

1. Спасибо за внимание, я только что прочитал. Я решил это другим способом, но в любом случае я попробовал ваш, и он не работает, поскольку ничего не делает, предупреждение не отображается.