Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Динамические чекбоксы 
:(
    Опции темы
denlem
Дата 3.11.2007, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 16.7.2006

Репутация: нет
Всего: нет



Подскажите , как переделать данный скрипт, чтобы вмсто селекта(второго нижнего) выводил группу полей чекбоксов? - 
 Название: <input type=checkbox name=c[] value='/значение подвыбора/'>

вот он скрипт с хтмл кодом:

Код

<SELECT id=vybor onchange="chkd('','vybor','podvybor');" name=vybor> 
    <OPTION value=1>выбор первый</OPTION> <OPTION value=2>выбор второй</OPTION> 
    <OPTION value=3>выбор третий</OPTION></SELECT> <br />
<SELECT id=podvybor name=podvybor></SELECT>
<script language=javascript>
    var linkas_lists = new Array();
    linkas_lists['1'] = new Array();
            linkas_lists['1']['1'] = 'подвыбор первый';
            linkas_lists['1']['2'] = 'подвыбор второй';
    linkas_lists['2'] = new Array();
            linkas_lists['2']['3'] = 'подвыбор третий';
            linkas_lists['2']['4'] = 'подвыбор четвертый';
    linkas_lists['3'] = new Array();
            linkas_lists['3']['5'] = 'подвыбор пятый';
            linkas_lists['3']['6'] = 'подвыбор шестой';

    function chkd(selected,vyb,podvyb){
        var iter=-1;
        var makeSelect  = document.getElementById(vyb);
        var modelSelect = document.getElementById(podvyb);
        var valueSelected = makeSelect.options[makeSelect.selectedIndex].value;
        if(modelSelect)
        {
            if (valueSelected!='')
            {
                while(modelSelect.firstChild) modelSelect.removeChild(modelSelect.firstChild);
                modelList = linkas_lists[valueSelected];
                    modelSelect.selectedIndex = 0;
                    for (i in modelList)
                    {
                        modelSelect.options[iter+1] = new Option(modelList[i],i);
                        if (selected==i) modelSelect.options[iter+1].selected = true;
                        if (modelList[i].match(/[А-Я]{3,}/)) modelSelect.options[iter+1].selected = true;
                        iter++;
                    }
            }
            else
            {
                while(modelSelect.firstChild) modelSelect.removeChild(modelSelect.firstChild);
            }
        }
    }
    </script>


Вижу что нужно плясать от этой строки  - var valueSelected = makeSelect.options[makeSelect.selectedIndex].value;
и подобных.., а в хтмле вместо второго селекта <div ..> поставить..  но как это сделать подскажите..


PM MAIL   Вверх
GIK
Дата 4.11.2007, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый человек
**


Профиль
Группа: Участник
Сообщений: 985
Регистрация: 3.6.2005
Где: я только не небыв ал

Репутация: 6
Всего: 14



В первую очередь надо создать сам чекбокс и сделать его "недоступным". Или тебе надо динамически собирать объект сheckbox ?


--------------------
Математика=>пиво=> програмирование, три вещи последовательны и совместимы !!!
Программирование - это не деятельнось! Программирование - это состояние души!
Бог - самый крутой программист.
PM MAIL ICQ   Вверх
denlem
Дата 4.11.2007, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 16.7.2006

Репутация: нет
Всего: нет



Да, именно, нужно чтобы динамически генерились поля чекбоксы, в зависимости от выбора селект-меню.
Например при выборе "выбор первый" сгенерились 2 чекбокса
Подвыбор первый: <input type=checkbox name=c[] value='1'>
Подвыбор второй: <input type=checkbox name=c[] value='2'>

Дальше, при выборе "выбор второй" сгенерились 2 (n) чекбокса
Подвыбор третий: <input type=checkbox name=c[] value='3'>
Подвыбор четвертый: <input type=checkbox name=c[] value='4'>

и т д
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0721 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.