Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > JavaScript: Общие вопросы > Скрипт блокировки checkbox |
Автор: fPtr 10.5.2007, 14:06 | ||||
Здравствуйте. Сижу, бьюсь с задачкой. Необходимо вывести на табличку с чеками, при чем чеки в первой колонке активируют чеки находящиеся во второй колонке. Проблема в том, что если на форме один чек то скрипт работает, а если нет, то нет ![]() В общем, мне кажется, что скрипт не работает т.к. создаются чеки с одинаковыми именами. Не могу придумать, как сделать, чтоб это заработало. Нужно менять имена Input’ов в цикле, а потом вызывать check с параметром (имя или id input’a). Вот скрипт и страничка:
Пожалуйста, приведите пример, как это сделать!!!! ![]() |
Автор: ksnk 10.5.2007, 14:41 | ||
Способов много, как пример - использовать дополнительный атрибут для "зависимых" инпутов и перебирать их в цикле.
- check принимает параметр this - все "зависимые" input'ы снабжаются атрибутом dependon с именем (или ID'ом) главного input'а |
Автор: solenko 10.5.2007, 14:51 | ||||
формируйте имя чекбоксов, например, так:
тогда получим нечто вроде:
ksnk, дополнительные аттрибуты, добавленные версткой воспринимают не все браузеры. |
Автор: fPtr 11.5.2007, 05:35 | ||||||
Спасибо большое за помощь!!!!
solenko здесь необходимо отправить в место check(downsys), check(this), и тогда все работает! ksnk твой вариант тоже работает, но необходимо так же изменять имена формируемых input'ов
ksnk здесь, необходимо изменять имена actRead, actWrite, actDelete, на [имя "основного импута"]_actRead и т.д. Должно быть что то, вроде:
Все что хотел заработало ![]() ![]() ksnk, solenko спасибо за помощь ![]() |
Автор: ksnk 11.5.2007, 12:50 |
fPtr, Пожалуйста, однако, зачем этот самый downsys указывать в input'e целых 2 раза я не понимаю. |
Автор: solenko 11.5.2007, 13:08 |
fPtr, сори, опечатался. ksnk, наверное для того чтобы потом их хоть как-то на сервере различить. Хотя я бы использовал одно имя для всех checkbox'ов и различал бы их уже по value |
Автор: fPtr 11.5.2007, 14:31 | ||||
Это просто я на примере работал ![]() В общем я все переделал как вы сказали получилось, хорошо. В общем - система дает права на доступ к подсистемам. По этому: Для приславутых input'ов downsys ![]()
А в осталные [идентификатор подсистемы]_название действия. Хотя можно и не делать так.
Получилось ![]() ![]() |