Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Показать спрятать родительский DIV по выбору Select с фильтром содержисого child DIV (https://javascript.ru/forum/dom-window/49125-pokazat-spryatat-roditelskijj-div-po-vyboru-select-s-filtrom-soderzhisogo-child-div.html)

AnimalInstinct 30.07.2014 13:41

Показать спрятать родительский DIV по выбору Select с фильтром содержисого child DIV
 
Привет, помогите пожалуйста с задачей. Есть список домов:

<div class="house">
<div class="rooms">1 bedroom house</div>
</div>

<div class="house">
<div class="rooms">2 bedroom house</div>
</div>

У каждого дома есть div в котором выводится количество спален

Есть select:

<select id="term" name="form_select">
<option label="1 bedroom" value="1">1 bedroom</option>
<option label="2 bedroom" value="2">2 bedroom</option>
</select>

При выборе 1 bedroom , нужно чтобы в списке показывались только DIV с ID house в CHILD DIV которых содержится 1 Bedroom ,

Проще говоря нужен фильтр

Начал такой скрипт, но что то не пойму как дальше его продолжить:

$('#term').on('change', function () 

 {
    var rooms = $("[class^=rooms]");

        if(!rooms.filter('1').length){
            $(rooms).parent().show()
         
        }
    });
});


Делаю тут в http://codepen.io/AnimalInstinct/pen/aplIK

AnimalInstinct 30.07.2014 14:05

Так у меня на сайте тоже у всех карточек в списке одинаковые id :)

AnimalInstinct 30.07.2014 14:06

Цитата:

Сообщение от AnimalInstinct (Сообщение 323398)
Так у меня на сайте тоже у всех карточек в списке одинаковые id :)

А нет вру, этож классы :)

Rise 30.07.2014 15:43

AnimalInstinct,
$('#term').on('change', function() {
    $('.house').hide().children('.rooms:contains('+this.value+')').parent().show();
});

AnimalInstinct 30.07.2014 17:35

Спасибо огромное, Rise, а можете целиком пример написать с выбором опции в select?

Там две опции получается 1 bedroom показывает блоки с одной спальней, скрывает остальные, и 2 bedroom, показывает блоки с двумя спальнями и скрывает остальные.

AnimalInstinct 30.07.2014 17:51

Запустил в Codepen , что то не хочет работать Тут

AnimalInstinct 30.07.2014 17:55

Точно, все работает, туплю адски.... :)

AnimalInstinct 30.07.2014 17:59

Вот сохранил тут, если еще кому нибудь понадобится


Часовой пояс GMT +3, время: 11:22.