Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Сравнить элементы li с одинаковым классом в разных ul (https://javascript.ru/forum/misc/61909-sravnit-ehlementy-li-s-odinakovym-klassom-v-raznykh-ul.html)

derevo 15.03.2016 03:47

Сравнить элементы li с одинаковым классом в разных ul
 
Добрый день. Есть не сложная задачка. Помогите пожалуйста.

На скрине показал как выглядит структура. Нужно при клике на чекбокс (только отличия) скрывать строку с одинаковыми значениями (т.е. скрыть строку "Тип акустики - коаксиальная - коаксиальная - коаксиальная" и "Количество полос - 2 - 2 - 2").

Т.е. получается нужно сравнить все li.osnovtd.tr10 (tr11, tr12, ...) (записать их в массив и там их перебрать и сравнить?), а потом присвоить им класс, для примера .hide
И для li.osnovtr.tr10 (tr11, tr12, ...) также присвоить класс .hide



Имеем такую структуру:
<input id="filter" type="checkbox">только отличия
<div class="cd-products-table">
   <div class="feateres">
      <ul class="cd-feateres-list">
         <li class="osnovtr tr10">Тип акустики</li>
         <li class="osnovtr tr11">Количество полос</li>
         <li class="osnovtr tr12">Мощность номинальная</li>
         <li class="osnovtr tr13">Мощность максимальная</li>
      </ul>
   </div>
   <div class="cd-products-wrapper">
      <ul class="cd-products-coliumns">
         <li class="product">
            <ul class="cd-feateres-list">
               <li class="osnovtd tr10">коаксиальная</li>
               <li class="osnovtd tr11">2</li>
               <li class="osnovtd tr12">60 Вт</li>
               <li class="osnovtd tr13">180 Вт</li>
            </ul>
         </li>
         <li class="product">
            <ul class="cd-feateres-list">
               <li class="osnovtd tr10">коаксиальная</li>
               <li class="osnovtd tr11">2</li>
               <li class="osnovtd tr12">30 Вт</li>
               <li class="osnovtd tr13">90 Вт</li>
            </ul>
         </li>
         <li class="product">
            <ul class="cd-feateres-list">
               <li class="osnovtd tr10">коаксиальная</li>
               <li class="osnovtd tr11">2</li>
               <li class="osnovtd tr12">60 Вт</li>
               <li class="osnovtd tr13">240 Вт</li>
            </ul>
         </li>
      </ul>
   </div>
</div>


Нужно получить в итоге:
<input id="filter" type="checkbox" checked="checked">только отличия
<div class="cd-products-table">
   <div class="feateres">
      <ul class="cd-feateres-list">
         <li class="osnovtr tr10 hide">Тип акустики</li>
         <li class="osnovtr tr11 hide">Количество полос</li>
         <li class="osnovtr tr12">Мощность номинальная</li>
         <li class="osnovtr tr13">Мощность максимальная</li>
      </ul>
   </div>
   <div class="cd-products-wrapper">
      <ul class="cd-products-coliumns">
         <li class="product">
            <ul class="cd-feateres-list">
               <li class="osnovtd tr10 hide">коаксиальная</li>
               <li class="osnovtd tr11 hide">2</li>
               <li class="osnovtd tr12">60 Вт</li>
               <li class="osnovtd tr13">180 Вт</li>
            </ul>
         </li>
         <li class="product">
            <ul class="cd-feateres-list">
               <li class="osnovtd tr10 hide">коаксиальная</li>
               <li class="osnovtd tr11 hide">2</li>
               <li class="osnovtd tr12">30 Вт</li>
               <li class="osnovtd tr13">90 Вт</li>
            </ul>
         </li>
         <li class="product">
            <ul class="cd-feateres-list">
               <li class="osnovtd tr10 hide">коаксиальная</li>
               <li class="osnovtd tr11 hide">2</li>
               <li class="osnovtd tr12">60 Вт</li>
               <li class="osnovtd tr13">240 Вт</li>
            </ul>
         </li>
      </ul>
   </div>
</div>

Deff 15.03.2016 04:13

derevo,
Cравнение на jQuery - подойдёт ?

derevo 15.03.2016 04:15

Цитата:

Сообщение от Deff (Сообщение 411010)
derevo,
Cравнение на jQuery - подойдёт ?

Да, конечно.


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