Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Выделение определённого количества checkbox
 
 автор: MikeSVB   (19.05.2009 в 11:48)   письмо автору
 
 

Сабж.

Есть список распространённых языков планеты Земля :). Пользователю допускается выбирать 5 языков. Как сделать что после нажатия на 5 checkbox остальные становились неактивные. ?

  Ответить  
 
 автор: sl1p   (19.05.2009 в 12:50)   письмо автору
 
   для: MikeSVB   (19.05.2009 в 11:48)
 

А к чему можно привязаться?
В форме с этими чекбоксами есть ещё какието чекбоксы?
Или может они в какомто отдельном от всех диве, таблице и т.д.?

  Ответить  
 
 автор: PAT   (19.05.2009 в 13:24)   письмо автору
 
   для: 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">
и, соответственно, надо раскомментировать выделенное в скрипте жирно - в двух местах
убрать по два подряд идущих слеша.

  Ответить  
 
 автор: MikeSVB   (19.05.2009 в 16:20)   письмо автору
 
   для: PAT   (19.05.2009 в 13:24)
 

Огромное спасибо! Суть понимаю. Жаль что не сильно обладаю яваскриптомс :( Поэтому и не смог сам сделать.
Больше чекбоксов нет в форме.

Ещё раз спасибо! Надеюсь я не один кому это пригодится

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования