JQuery фильтр с множественными категориями

184
31 декабря 2018, 20:10

Есть простой фильтр

$('.trainers__nav a').on('click', function(e) {
    e.preventDefault();
    var elems = $('.trainers__item[data-type="' + $(this).attr('value') + '"]');
    elems.addClass('trainers__item_show');
    $('.trainers__item').not(elems).addClass('trainers__item_disable').removeClass('trainers__item_show');
    if ($(this).attr('value') == 'all') {
        $('.trainers__item').removeClass('trainers__item_disable');
    };
});

Как сделать проверку data атрибута у article, если у него может быть несколько категорий? Пример:

<article class="trainers__item" data-type="old student">
   <span>old student</span>
</article>

fiddle

Спасибо

Answer 1

Ответ оказался очень простым:

Вместо равенства в искомой строке нужно было проверять что значение атрибута ее содержит, т.е.:

Вместо [data-type=" нужно [data-type*="

READ ALSO
Плавное разворачивание блока

Плавное разворачивание блока

Вроде бы типичная ситуация, но не могу понять, как сделать на jQuery плавно разворачивающиеся текст? То бишь, мне нужен аналог slideToggle для блока,...

178
Запись значения radio в переменную jQuery

Запись значения radio в переменную jQuery

есть код который позволяет скрыть определенные элементы, при значение из спискаКак его переделать, чтобы он работал при radio?

195
Linq - как бы объединить в одно условие

Linq - как бы объединить в одно условие

Как бы объединить в одно условие вот такой набор правил:

182