Задача: Динамическая очистка выпадающего списка (select) на javascript
Исходник: Универсальное очищение, язык: javascript [code #95, hits: 8814]
автор: this [добавлен: 21.03.2006]
  1. <html>
  2. <head>
  3. <title>Drop Down List Tests</title>
  4. </head>
  5.  
  6. <body>
  7.  
  8. <select id="mysel">
  9. <optgroup label="group1">
  10. <option value="1">1 item</option>
  11. <option value="2">2 item</option>
  12. </optgroup>
  13. <option value="3">3 item</option>
  14. <option value="4">4 item</option>
  15. <option value="5">5 item</option>
  16. </select>
  17. <input type="button" value="Clear Select" onclick="return ClearSelect();">
  18.  
  19. <script language="javascript">
  20. function ClearSelect() {
  21. var sel = document.getElementById('mysel');
  22.  
  23. while (sel.childNodes.length) {
  24. // Данный if только для Opera-ы, которая не удаляет
  25. // optgroup, если в нем есть элементы.
  26. if (sel.firstChild.tagName == 'OPTGROUP') {
  27. while (sel.firstChild.childNodes.length) {
  28. sel.firstChild.removeChild(sel.firstChild.firstChild);
  29. }
  30. }
  31. sel.removeChild(sel.firstChild);
  32. }
  33. return true;
  34. }
  35. </script>
  36. </body>
  37. </html>
Динамически удаляет содержимое выпадающего списка.
Работает - во всех "не старых" IE, Mozilla, Opera.

При этом в Mozilla и IE скрипт отработает даже если убрать if в строках 26-30.
Тестировалось на: IE 6.0 SP2, Mozilla FF 1.5, Opera 8.5

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