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

HTML+CSS+JavaScript

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Как установить ограничение на количество чекбоксов.

Сообщения:  [1-10]    [11-20]  [21-21] 

 
 автор: linoxru   (04.04.2016 в 15:51)   письмо автору
 
   для: Deed   (05.06.2014 в 11:37)
 

А если input выводится в многоуровневом списке ul, можно заставить скрипт работать ?

  Ответить  
 
 автор: Leshii   (06.06.2014 в 17:24)   письмо автору
 
   для: Deed   (05.06.2014 в 11:37)
 

Хмм...попробовал развить - вживил в калькулятор, добавил значения value. Что получается: допустим мы складываем выбранные значения чекбоксов. Тогда при выборе четвертого значение третьего не стирается, а суммируется к четвертому(

  Ответить  
 
 автор: Leshii   (05.06.2014 в 12:31)   письмо автору
 
   для: Deed   (05.06.2014 в 11:37)
 

Да, с атрибутом чтот ошибся))
Воу! Супер! Ты гений) Спасибо огромнейшее!

  Ответить  
 
 автор: Deed   (05.06.2014 в 11:37)   письмо автору
 
   для: Leshii   (05.06.2014 в 10:33)
 

http://jsbin.com/cemuzu/1/edit?html,js,output

$(document).ready(function() {
  var last_chb,pre_last_chb='';
  $('#content :checkbox').click(function() {
    var pdi = $(this).parent('div').index();
    if(pre_last_chb===''){
      last_chb=pre_last_chb=pdi;
    }
    else{
      pre_last_chb=last_chb;
      last_chb=pdi;
    }
    if($('.sh>:checked').length>3){
      $('.sh').eq(pre_last_chb).find(':checkbox').attr('checked', false);
    }
  });
}); 


P.S. Атрибут "for" тега "label" должен быть таким же, как атрибут "id" тега "input", которому этот label передает клик.

  Ответить  
 
 автор: Leshii   (05.06.2014 в 10:33)   письмо автору
 
   для: Deed   (05.06.2014 в 08:20)
 

Как вариант:

<div id="content"> 
<div class="sh"> <input name="cb[]" id="check1" type="checkbox"> <label for="is_html1"></label> </div> 
<div class="sh"> <input name="cb[]" id="check2" type="checkbox"> <label for="is_html2"></label> </div>  
<div class="sh"> <input name="cb[]" id="check3" type="checkbox">  <label for="is_html3"></label></div> 
<div class="sh"> <input name="cb[]" id="check4" type="checkbox">  <label for="is_html4"></label></div> 
<div class="sh"> <input name="cb[]" id="check5" type="checkbox">  <label for="is_html5"></label></div> 
<div class="sh"> <input name="cb[]" id="check6" type="checkbox">  <label for="is_html6"></label></div> 
<div class="sh"> <input name="cb[]" id="check7" type="checkbox">  <label for="is_html7></label> </div>  
<div class="sh"> <input name="cb[]" id="check8" type="checkbox">  <label for="is_html8"></label></div> 
</div>

  Ответить  
 
 автор: Deed   (05.06.2014 в 08:20)   письмо автору
 
   для: Leshii   (04.06.2014 в 22:30)
 

И как теперь выглядит код?

  Ответить  
 
 автор: Leshii   (04.06.2014 в 22:30)   письмо автору
 
   для: Deed   (04.06.2014 в 19:05)
 

Спасибо большое! Работает как надо если стоят только инпуты, однако добавляем что - то между ними и работать прекращает (я пробовал лейблы добавить и обернуть в див).=(

  Ответить  
 
 автор: Deed   (04.06.2014 в 19:05)   письмо автору
 
   для: Leshii   (04.06.2014 в 18:21)
 

http://jsbin.com/bovaf/1/edit?html,js,output

$(document).ready(function() {
  var last_chb,pre_last_chb='';
  $(':checkbox').click(function() {
    if(pre_last_chb===''){
      last_chb=pre_last_chb=$(this).index();
    }
    else{
      pre_last_chb=last_chb;
      last_chb=$(this).index();
    }
    if($(':checked').length>3){
      $(':checkbox').eq(pre_last_chb).attr('checked', false);
    }
  });
}); 

  Ответить  
 
 автор: Leshii   (04.06.2014 в 18:21)   письмо автору
 
   для: АЯ   (18.02.2010 в 11:18)
 

Хорошее решение! Есть только еще одна идея. Сейчас после выбора 3ех элементов чтобы выбрать другой элемент надо снять чек с предыдущего. Не подскажите как сделать так чтобы можно было выбрать только 3 элемента, но при клике на четвертый отметка с третьего снималась и устанавливалась на 4ом?

  Ответить  
 
 автор: psychomc   (24.02.2010 в 17:23)   письмо автору
 
   для: TanTaL91   (18.02.2010 в 14:36)
 

-

  Ответить  

Сообщения:  [1-10]    [11-20]  [21-21] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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