Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Добавлять класс для label при активном checkbox? (https://javascript.ru/forum/dom-window/70652-dobavlyat-klass-dlya-label-pri-aktivnom-checkbox.html)

INSIDER73 22.09.2017 09:02

Добавлять класс для label при активном checkbox?
 
Есть такая структура
<table id="chbBlogsLabelsList" border="0">
  <tbody><tr>
    <td><input id="chbBlogsLabelsList_0" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_0"><label for="chbBlogsLabelsList_0">еда</label></td>
  </tr><tr>
    <td><input id="chbBlogsLabelsList_1" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_1"><label for="chbBlogsLabelsList_1">концерт</label></td>
  </tr><tr>
    <td><input id="chbBlogsLabelsList_2" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_2"><label for="chbBlogsLabelsList_2">dj</label></td>
  </tr><tr>
    <td><input id="chbBlogsLabelsList_3" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_3"><label for="chbBlogsLabelsList_3">коктейль</label></td>
  </tr><tr>
    <td><input id="chbBlogsLabelsList_4" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_4"><label for="chbBlogsLabelsList_4">кальян</label></td>
  </tr>
</tbody></table>


При активном чекбоксе добавляю класс
$(function() {
$( "#chbBlogsLabelsList input" ).on( "click", function() {
            if($(this).is(":checked")) { $(this).addClass("qqqq");}
   else {$(this).removeClass("qqqq");}
})
});


класс добавляется для input
мне нужно чтобы если класс добавлен для input то он добавлялся и для label,соответственно если чекбокс не активен то и с label класса убирался

INSIDER73 22.09.2017 09:13

Вопрос решен
$(function() {
$( "#chbBlogsLabelsList input" ).on( "click", function() {
            if($(this).is(":checked")) { $(this).next().addClass("qqqq");}
   else {$(this).next().removeClass("qqqq");}
})
});

рони 22.09.2017 11:23

INSIDER73,
для данной структуры достаточно только css
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">

 <style type="text/css">
   #chbBlogsLabelsList input:checked + label{
     border: solid 2px #0066FF;
     border-radius: 8px;
       padding: 4px 8px;
   }
   #chbBlogsLabelsList input{
     display: none;
   }

 </style>
</head>

<body>
<table id="chbBlogsLabelsList" border="0">
  <tbody><tr>
    <td><input id="chbBlogsLabelsList_0" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_0"><label for="chbBlogsLabelsList_0">еда</label></td>
  </tr><tr>
    <td><input id="chbBlogsLabelsList_1" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_1"><label for="chbBlogsLabelsList_1">концерт</label></td>
  </tr><tr>
    <td><input id="chbBlogsLabelsList_2" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_2"><label for="chbBlogsLabelsList_2">dj</label></td>
  </tr><tr>
    <td><input id="chbBlogsLabelsList_3" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_3"><label for="chbBlogsLabelsList_3">коктейль</label></td>
  </tr><tr>
    <td><input id="chbBlogsLabelsList_4" type="checkbox" name="ctl00$cphMain$chbBlogsLabelsList$chbBlogsLabelsList_4"><label for="chbBlogsLabelsList_4">кальян</label></td>
  </tr>
</tbody></table>


</body>
</html>


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