Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Изменение цвета фона при активном checkbox_e (https://javascript.ru/forum/dom-window/65332-izmenenie-cveta-fona-pri-aktivnom-checkbox_e.html)

MixPetrov 12.10.2016 20:50

Изменение цвета фона при активном checkbox_e
 
Доброго!

Имеется таблица в виде прайс листа (картинка, название, ..., checkbox).
checkbox выводиться <div class="multicart">, соответственно картинка, название аналогично выводится через <div>

Как правильно сделать чтоб при активации чекбокса его содержащая ячейка меняла цвет фона.

Было сделано вот так (код взят с форума):
<style type="text/css">
   .mon {
   background: green;
}
</style>


<script type="text/javascript">
   $('.multicart').ready(function(){
   $('input').click(function(){
   $(this).parent().toggleClass('mon');
   });
})
</script>

работает, но меняет фон абсолютно всем чекбоксам на странице.

рони 12.10.2016 20:56

MixPetrov,
html где?
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

Aetae 12.10.2016 21:39

$('input')
->
$('.multicart input[type="checkbox"]')

MixPetrov 12.10.2016 22:15

Aetae,
Спасибо, все работает.

MixPetrov 12.10.2016 22:17

А вот для общего развития: можно ли добавить в код изменение цвета фона не только в ячейке с чекбоксом, но и в других?

Aetae 12.10.2016 22:22

*задумчиво смотрит на расклад куриных потрохов*
$('.multicart input[type="checkbox"]')
->
$('.multicart')

$(this).parent().toggleClass('mon');
->
$(this).toggleClass('mon');

Но вообще непонятно, что подразумевается под "другими", кто знает какая там у вас структура.

MixPetrov 12.10.2016 22:38

Структура таблицы такая: каждая ячейка строки в таблице формируется <div классом>.

<div class="multicart"> - содержится чекбокс
<div class="model"> и тд.


В вышеприведенном скрипте фон меняется в ячейке формируемой <div class="multicart">, а вот можно ли за одно поменять фон и <div class="model">, <div class="name"> и т.д.

Извиняюсь если не совсем четко объясняю

рони 12.10.2016 23:16

Цитата:

Сообщение от MixPetrov
Структура таблицы такая

Цитата:

Сообщение от Aetae
*задумчиво смотрит на расклад куриных потрохов*

Цитата:

Сообщение от рони
MixPetrov,
html где?
Пожалуйста, отформатируйте свой код!

:(

Aetae 12.10.2016 23:19

$('.multicart, .model, .name')
А вообще используйте мозг. Догадаться как и что делать можно вообще не зная никакого программирования: логики и гугла достаточно.

рони 12.10.2016 23:20

MixPetrov,
так сложно показать?
<div class="multicart">
    <input type="checkbox">
    <div class="model"></div>
</div>


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