только 1 отмеченый checkbox
на форме есть разные checkboxы и их много. как сделать так, чтоб была возможность выбора только 1 чекбокса (в которых имя pok1,pok2,...), при выборе следуещего, снималась галка с отмеченого?
примерный код onclick чекбокса: function ces() { var k = $(this).is(':checked') elements=$('input[name^="pok"]'); var len=elements.size(); for (index=0;index<len;index++) { elements.eq(index).attr('checked',false); }; $(this).attr('checked', k) } первое сохранил состояние текущего чекбокса, потом сбросил у всех что надо, потом установил предыдущее состояние? блин.. может просто в массив $('input[name^="pok"]'); прописать .not('input[имя]')? только не знаю как имя получить в jquery спасибо.. |
Кажись для этого и придумали radio
|
а по сабжу?...
|
zaqwer,
если вы чего-то не поняли, это не значит, что вам ответили не по сабжу. Это значит только то, что вы чего-то не поняли. А если вы чего-то не поняли, так и спрашивайте, что именно не поняли, а не делайте умный вид со словами "а по сабжу?". |
Kolyaj,
пожалуйста.. не тролите.. я написал в первом посте, что мне непонятно и прошу, если у кого-то будет желание и возможность, то посоветуйте как выйти с ситуации, не изменяя постановки? |
zaqwer,
смотрите тут тип radio - Атрибут type |
Vulkan, спасибо
может знаете как сделать, чтоб выделение снималось с остальных чекбоксов и ставилось на выбраном чекбоксе? |
Цитата:
|
Например:
<!DOCTYPE HTML><html> <body> <input type="radio" name="boy"/><option value="1">мужской</option> <input type="radio" name="boyl"/><option value="2">женский</option> </body> </html> name должно быть одинаково для всех option value -- разным. Привел пример, догадаешься, что Мужской и женский надо менять на нужные слова |
сколько вам раз сказать, чтоб поняли? мне надо чекбоксы!
не реально? или вы не знаете? |
Человек, ты вообще читаешь что тебе советуют?
то что ты просишь - называется быдлокодингом... не верб что нельзя поменять типы с чекбоксов на радио. Но фиг с тобой золотая рыбка - вот тебе код: вот тебе чекбоксы <input type="checkbox" name="a" value="1"/>1<br/> <input type="checkbox" name="a" value="2"/>2<br/> <input type="checkbox" name="a" value="3"/>3<br/> <input type="checkbox" name="a" value="4"/>4<br/> <input type="checkbox" name="a" value="5"/>5<br/> <input type="checkbox" name="a" value="6"/>6<br/> вот тебе хрень, которая выбирает только 1 чекбокс. Работает так же как и радиобаттоны. $(document).ready(function(){ $('input[name=a]').change(function(){ $('input[name=a]').attr('checked', ''); $(this).attr('checked', 'true'); }) }) |
Цитата:
мой вариант лучше ) Код:
:p |
Работает быстрее, но с ошибкой :)
|
$(function(){ $('input[type=checkbox]').change(function() { if (this.checked) { var check = $("input[type=checkbox]"); for (var i = 0; i < check.length; i++) if (check[i] != this) check[i].checked = false; } }); }); |
нафиг циклы? запоминайте последний чекбокс и все дела.
<input type="checkbox" name="a" value="1"/>1<br/> <input type="checkbox" name="a" value="2"/>2<br/> <input type="checkbox" name="a" value="3"/>3<br/> <input type="checkbox" name="a" value="4"/>4<br/> <input type="checkbox" name="a" value="5"/>5<br/> <input type="checkbox" name="a" value="6"/>6<br/> <script> var last={}, ie=/*@cc_on@*/0; document.body.onclick=function(e){ e=ie?event.scrElement:e.target; if(e.name!="a"&&e.type!="checkbox") return; last.checked=false; e.checked=true; last=e; } </script> |
Часовой пояс GMT +3, время: 05:24. |