X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Смена фона блока при выборе чекбокса
happyhand
happyhand
Topic Starter сообщение 15.4.2012, 14:28; Ответить: happyhand
Сообщение #1


Динамически из базы выводятся блоки, в каждом есть чекбокс удаления.
Нужно сделать, чтобы при выборе чекбокса менялся цвет фона именно этого блока.

Вот реализовал так:

[JS]$('div.addContTable input[type=checkbox]').bind('click', function(){
var flag = false;
$('div.addContTable input[type=checkbox]').each(function (index) {
if ($(this).attr('checked') == true)
flag = true;
})
if (flag)
{
$('.addContTable').addClass("hover_m")
}
else
{
$('.addContTable').removeClass("hover_m")
}
}) [/JS]

но при выборе чекбокса выделяются все блоки.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Azazaza_hb
Azazaza_hb
сообщение 15.4.2012, 15:07; Ответить: Azazaza_hb
Сообщение #2


[JS]
$("div.addContTable input:checkbox").click(function(){
if ($(this).attr("checked")) {
$(this).parent().addClass("hover_m");
} else {
$(this).parent().removeClass("hover_m") ;
}
});
[/JS]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Arks
Arks
сообщение 15.4.2012, 16:40; Ответить: Arks
Сообщение #3


<div>
<input type="checkbox" onchange="this.checked ? this.parentNode.style.background='#131313' : this.parentNode.style.background='#fff'">
</div>
че вы паритесь, Вам что в этом jQuery, мёдом намазано или за каждую строчку кода вам индусы доплачивают? Могу то же самое написать в теге script чтобы подключать 1 раз, но думаю вы и сами осилите.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
happyhand
happyhand
Topic Starter сообщение 15.4.2012, 19:36; Ответить: happyhand
Сообщение #4


Выделяется только таблица, в которой находится этот чекбокс.
А у меня должен выделяться блок, в котором находится таблица, где много инпутов, а в этой таблице (в одной из ячеек) ещё одна, где и находится чекбокс.
Ни prepend, ни parents, ни closest не решают также проблемы.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Azazaza_hb
Azazaza_hb
сообщение 15.4.2012, 19:53; Ответить: Azazaza_hb
Сообщение #5


так покажите хтмл код, и какой там блок должен выделиться при выборе конкретного чекбокса
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
happyhand
happyhand
Topic Starter сообщение 15.4.2012, 20:22; Ответить: happyhand
Сообщение #6


[JS]$q2 = mysql_query("SELECT * FROM contFaces WHERE id_yur='".$_GET['id']."' ORDER BY id_cont DESC");
if(mysql_num_rows($q2)>0)
{
echo"
<div id=\"addConfForm\">
<div id=\"contTitle\">Контактные лица</div>
<div class=\"addContTable\">";
$i=1;
while($a2=mysql_fetch_assoc($q2))
{
echo"
<table border=0 cellspacing=0 cellpadding=3>
<tr>
<td>Физ. лицо</td>
<td></td>
</tr>
<tr>
<td>Должность</td>
<td></td>
</tr>
<tr>
<td valign=top>
<table width=\"100%\" border=0>
<tr><td colspan=2>Примечания</td></tr>
<tr><td width=10><input type=\"checkbox\" name=\"delCont[]\" value=\"".$a2['id_cont']."\" title=\"Удалить\" /></td><td align=left><img style=\"display:block;margin:0\" src=\"".$h."/img/del.png\" title=\"Удалить\" /></td></tr>
</table>
</td><td></td>
</tr>
</table>";
$i++;
}
echo"
</div>
<div id=\"addMoreCont\">Добавить ещё</div>
</div>";
}[/JS]

Выделиться должна таблица, которая в блоке с классом 'addContTable'.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
happyhand
happyhand
Topic Starter сообщение 15.4.2012, 20:50; Ответить: happyhand
Сообщение #7


Вобщем, работает так:):

[JS]$("div.addContTable input:checkbox").click(function(){
if ($(this).attr("checked")) {
$(this).parent().parent().parent().parent().parent().parent().parent().addCl
ass("hover_m");
} else {
$(this).parent().parent().parent().parent().parent().parent().parent().remov
eClass("hover_m") ;
}[/JS]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
cyber_ua
cyber_ua
сообщение 15.4.2012, 21:03; Ответить: cyber_ua
Сообщение #8


(sergey-g @ 15.4.2012, 23:50) *
Вобщем, работает так:):

[JS]$("div.addContTable input:checkbox").click(function(){
if ($(this).attr("checked")) {
$(this).parent().parent().parent().parent().parent().parent().parent().addCl
ass("hover_m");
} else {
$(this).parent().parent().parent().parent().parent().parent().parent().remov
eClass("hover_m") ;
}[/JS]


я крнечно незнаю синтаксиса jQuery, но зачем столько парентов?=)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
happyhand
happyhand
Topic Starter сообщение 15.4.2012, 21:06; Ответить: happyhand
Сообщение #9


Сам не знаю, но получено методом тыка :).
Jquery глубоко не знаю.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Azazaza_hb
Azazaza_hb
сообщение 15.4.2012, 21:14; Ответить: Azazaza_hb
Сообщение #10


в цикле таблицу можно генерировать с каким-то классом, и обратиться к ней тогда уже так $(this).parent('.tableClass')
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на первый заказ.
Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на п
7 stu999 1759 31.3.2024, 11:19
автор: stu999
Открытая тема (нет новых ответов) Получил странную ссылку при линкбилдинге
Как поведет себя поиск при обнаружении странной ссылке?
10 r0mZet 2206 24.10.2022, 19:23
автор: Wachowski
Горячая тема (нет новых ответов) 300 площадок под вечные ссылки на выбор: ТИЦ 20-9400, PR 0-6, ЯК, DMOZ. Скидки при пакетном заказе!
65 inkon 30398 19.7.2022, 13:41
автор: Funoman
Горячая тема (нет новых ответов) тИЦ отменили! Новый показатель Яндекса ИКС! Лучшие площадки под размещение. Бесплатное написание статей при любом заказе.
Эксклюзивное предложение. Успей получить написание статей БЕСПЛАТНО
71 VIMstat 78518 21.6.2022, 9:38
автор: VIMstat
Открытая тема (нет новых ответов) Ukr Private Proxy 4g Lifecell, Kyivstar, Vodafone (ТЕСТ, смена по ссылке, ротация)
Продам Личные Украинские приватные мобильные прокси 4g Lifecell, Kyivs
1 Kostyaxxxx 4266 20.6.2021, 20:26
автор: Kostyaxxxx


 



RSS Текстовая версия Сейчас: 26.4.2024, 7:05
Дизайн