|
|
|
| Сабж.
Есть список распространённых языков планеты Земля :). Пользователю допускается выбирать 5 языков. Как сделать что после нажатия на 5 checkbox остальные становились неактивные. ? | |
|
|
|
|
|
|
|
для: MikeSVB
(19.05.2009 в 11:48)
| | А к чему можно привязаться?
В форме с этими чекбоксами есть ещё какието чекбоксы?
Или может они в какомто отдельном от всех диве, таблице и т.д.? | |
|
|
|
|
|
|
|
для: MikeSVB
(19.05.2009 в 11:48)
| |
<script>
function myFunc (ev)
{
var evt = ev || window.event, obj = evt.target || evt.srcElement;
if (obj.tagName == 'INPUT'
//&& obj.className == 'myClass'
&& obj.type == 'checkbox') {if (!self.SUM) SUM = 0;
SUM += ((obj.checked) ? 1 : -1);
for (var o = document.myForm.elements, j = 0; j < o.length; j++)
o [j].disabled = (o [j].tagName == 'INPUT'
&& o [j].type == 'checkbox'
//&& o [j].className == 'myClass'
&& !o [j].checked
&& SUM == 5) ? 1 : 0}
}
</script>
<form name="myForm" onclick="myFunc (event)">
<input type="checkbox">
<input type="checkbox">
<input type="checkbox">
<input type="checkbox">
<input type="checkbox">
<input type="checkbox">
...
<input type="checkbox">
<input type="checkbox">
<input type="checkbox">
...
</form>
| Дано для случая, когда чекбоксов иного назначения (кроме "языкового") в форме нет.
Если же таковые (другого назначения) будут, то тогда необходимо каким-то образом чекбоксы
одного назначения отличить от всех других чекбоксов.
Например, можно всем чекбоксам "языкового" назначения прописать один и тот же класс
<input type="checkbox" class="myClass">
| и, соответственно, надо раскомментировать выделенное в скрипте жирно - в двух местах
убрать по два подряд идущих слеша. | |
|
|
|
|
|
|
|
для: PAT
(19.05.2009 в 13:24)
| | Огромное спасибо! Суть понимаю. Жаль что не сильно обладаю яваскриптомс :( Поэтому и не смог сам сделать.
Больше чекбоксов нет в форме.
Ещё раз спасибо! Надеюсь я не один кому это пригодится | |
|
|
|