Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.10.2011, 23:47
Аватар для cmd
cmd cmd вне форума
Профессор
Отправить личное сообщение для cmd Посмотреть профиль Найти все сообщения от cmd
 
Регистрация: 19.03.2011
Сообщений: 177

makeDropDown в javascript
Приветы.
В php есть хорошая функция, которая приобразовывает массив в выпадающий список <select>. Вот такой она бывает:
function makeDropDown($options, $name, $selected = '', $attr = ''){

    foreach ($options as $value => $description){
    	$output .= '<option value="'.$value.'"'.(($selected == $value) ? ' selected ' : '').'>'.$description.'</option>';
    }

return '<select size="1" id="'.$name.'" name="'.$name.'" '.$attr.'>'.$output.'</select>';
}


А вот как это реализовать в JS? Я погуглил - не нашел. Помыкался сам - получается уныло. Ни у кого случаем готового решения не завалялось?

Спасибо.

P.S. Нашел такой _http://www.plus2net.com/javascript_tutorial/list-adding.php вариант, но он какой-то пацаваты. Внешний по отношении к функции цикл совершенно не в масть и select надо предварительно создать...
__________________
Cogito, ergo sum

Последний раз редактировалось cmd, 08.10.2011 в 00:02.
Ответить с цитированием
  #2 (permalink)  
Старый 08.10.2011, 01:20
Аватар для fimble
Новичок на форуме
Отправить личное сообщение для fimble Посмотреть профиль Найти все сообщения от fimble
 
Регистрация: 07.10.2011
Сообщений: 5

оно?
var a = ['1','2','3'],
        mydiv = document.getElementById( 'mydiv' ),

        createSelect = function( arr ) {
            var select = document.createElement('select'),
                i,
                option;

            for( i = 0; i < arr.length ; i++ ) {
                option = document.createElement( 'option' );
                option.setAttribute( 'value', arr[i] );
                option.innerHTML = arr[i];
                select.appendChild( option );
            }
            return select;
        };

    mydiv.appendChild( createSelect( a ) );


Набросал на коленке, конечно надо добавить selected и т.п.

Последний раз редактировалось fimble, 08.10.2011 в 01:24.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Книга] Stoyan Stefanov, Javascript Patterns Dmitry A. Soshnikov Учебные материалы 20 13.08.2013 11:37
Первый Moscow JavaScript Meetup korenyushkin Общие вопросы Javascript 0 26.07.2011 15:23
javascript вставки в vrml сцены. Передать событие из броузера Proletariy Javascript под браузер 0 10.05.2011 12:26
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34