Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   chekbox disabled (https://javascript.ru/forum/misc/15057-chekbox-disabled.html)

ekase 11.02.2011 14:44

chekbox disabled
 
Добрый день. изучаю javascript сравнительно недавно. Поэтому задаю вопрос.

Имеем:
Таблица в MySQL
Параметр "count" равный числу (int)
Чекбоксы

Надо:
Чтобы пользователь не смог выбрать более чем "count" чекбоксов.
т.е. если у нас в count число 5, то при выборе 5-ти чекбоксов остальные переходили бы в состояние "disabled".
при этом хотелось бы еще защиту от дибилов, которые натыкали бы 5 штук, а потом передумали(т.е. откат события disabled при снятии галочек).


еще вопрос: как получить данные полей из таблицы в javascript? (если ответите на это, то остальные вопросы отпадут :) )

Спасибо всем)

ksa 11.02.2011 14:52

ekase, начинай делать тестовые примеры. Это ускорит возможные ответы на твои вопросы... ;)

ekase 11.02.2011 15:00

да в том-то и дело, что мне надо только одну функцию на javascript вот с этими checkbox'ами. Я бы начал, но некогда мне учить весь javascript =(

revvo 11.02.2011 15:01

Я тут конечно сам больше поспрашивать захожу, но кое чего уже слегка понимаю. Может будет полезно.
Цитата:

еще вопрос: как получить данные полей из таблицы в javascript? (если ответите на это, то остальные вопросы отпадут )
Имеется ввиду с сервера, с MySQL таблицы? Тогда Ajax запросом. На стороне сервера нужен скрипт, к к-рому будет обращаться Ajax запрос, и к-рый собственно и будет получать из таблицы данные.

Насчет пяти чекбоксов, так тут довольно просто. Заведи глобальный счетчик, и увеличивай его при каждой новой галке, при снятии галки - уменьшай. Как только счетчик превысит пять (с > 5), то делай остальные неактивными (тут я не знаю как это сделать, может jQuery, по идее некативность это вполне частое состояние и эта фича должна быть в стандарте и обычного JS).

Извини что без кода, времени нету.

dmitriymar 11.02.2011 15:11

Цитата:

Сообщение от ekase
да в том-то и дело, что мне надо только одну функцию на javascript вот с этими checkbox'ами. Я бы начал, но некогда мне учить весь javascript =(

решение одно для этого
http://javascript.ru/forum/job/

ekase 11.02.2011 18:00

<script type="text/javascript"> var max = $myrow[count]; // podstavish iz DB
alert (max) ;
$(document).ready(function() {
$('#check').submit(function() {
total = 0;

$('div#chekbox input').each(function(item) {

if ($(this).attr('checked') == true) {
total++;
}
});

if(total > max) {
alert('выберите не более '+ max +' категорий');
}

if (total == 0){
alert('вы не выбрали ни одной категории');
}
});
});
</script>

может кому надо будет... checkbox не блокируется, блокируется сам запрос.


Часовой пояс GMT +3, время: 05:07.