Задача: Динамическое формирование выпадающего списка
Исходник: Универсальное заполнение, вариант №2, язык: javascript [code #98, hits: 8614]
автор: this [добавлен: 22.03.2006]
  1. <html>
  2. <head>
  3. <title>Drop Down List Tests</title>
  4. </head>
  5.  
  6. <body>
  7.  
  8. <select id="mysel">
  9.  
  10. </select>
  11. <input type="button" value="Fill Select" onclick="return Fill();">
  12.  
  13. <script language="javascript">
  14. function Fill() {
  15. var sel = document.getElementById('mysel');
  16.  
  17. // Добавляем optgroup
  18. var newOptGroup = document.createElement('OPTGROUP');
  19. newOptGroup.label = 'Наша группа №1';
  20.  
  21. sel.appendChild(newOptGroup);
  22.  
  23. // Заполняем его пунктами
  24. for (var i = 0; i < 10; i++){
  25. var newOpt = document.createElement('OPTION');
  26.  
  27. newOpt.value = 'value' + i;
  28. newOpt.innerHTML = 'punkt' + i;
  29. newOptGroup.appendChild(newOpt);
  30.  
  31. }
  32. return true;
  33. }
  34. </script>
  35. </body>
  36. </html>
Показывает как можно заполнить выпадающий список если используются еще и optgroup.

Наиболее "красивый" вариант, поскольку и optgroup и option формируются одинаково через createElement
Тестировалось на: IE 6.0 SP2, Mozilla FF 1.5, Opera 8.5

+добавить реализацию