Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.09.2008, 14:26
qwe
 
Сообщений: n/a

Help
Пишу функцию, которая удаляет option из drop down list:
function delete_options()
{
    var k = document.getElementById('drop_down1');
    var temp = document.getElementById('drop_down1').getElementsByTagName('option');
    for (var i=0;i< temp.length;i++)
        {
            k.removeChild(temp[i]);
        }
}


Подскажите почему удаляются через 1?
Ответить с цитированием
  #2 (permalink)  
Старый 11.09.2008, 15:15
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

потому что некоторые браузеры пропуск между отдельными тегами тоже считают за Child
подробней в начале статьи http://javascript.ru/start/dom/search-spec
Ответить с цитированием
  #3 (permalink)  
Старый 11.09.2008, 15:25
Флудер
Отправить личное сообщение для ZoNT Посмотреть профиль Найти все сообщения от ZoNT
 
Регистрация: 25.07.2008
Сообщений: 1,271

Сообщение от Gvozd Посмотреть сообщение
потому что некоторые браузеры пропуск между отдельными тегами тоже считают за Child
подробней в начале статьи http://javascript.ru/start/dom/search-spec
Причём здесь отступы, если получены только опшны???

попробуй так:
function delete_options() {
    var k = document.getElementById('drop_down1');
    while (k.childNodes.length) k.removeChild(k.firstChild)
}
Ответить с цитированием
  #4 (permalink)  
Старый 11.09.2008, 15:41
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Возможно, я покажусь неоригинальным, но
function delete_options() {
  document.getElementById('drop_down1').innerHTML = '';
}
Ответить с цитированием
  #5 (permalink)  
Старый 11.09.2008, 15:43
Флудер
Отправить личное сообщение для ZoNT Посмотреть профиль Найти все сообщения от ZoNT
 
Регистрация: 25.07.2008
Сообщений: 1,271

из твоего примера нельзя сделать другой чтобы удаить все кроме первого ну и т.д. То есть непонятно, как работать с дочерними нодами через DOM.
Ответить с цитированием
  #6 (permalink)  
Старый 11.09.2008, 15:47
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

ZoNT, а зачем?
Ответить с цитированием
  #7 (permalink)  
Старый 11.09.2008, 16:03
Флудер
Отправить личное сообщение для ZoNT Посмотреть профиль Найти все сообщения от ZoNT
 
Регистрация: 25.07.2008
Сообщений: 1,271

чтобы знать, как работать с нодами черз дом
Ответить с цитированием
  #8 (permalink)  
Старый 11.09.2008, 16:25
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Дык мы тут options из select удаляем или учебник пишем?
Ответить с цитированием
  #9 (permalink)  
Старый 11.09.2008, 17:17
Флудер
Отправить личное сообщение для ZoNT Посмотреть профиль Найти все сообщения от ZoNT
 
Регистрация: 25.07.2008
Сообщений: 1,271

Мы тут на форуме людям помогаем. Делать всё за них - это не помощь.
А вот научить их что-то делать самостоятельно - это помощь.
Ответить с цитированием
  #10 (permalink)  
Старый 11.09.2008, 19:56
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Научить писать эффективный код.
Ответить с цитированием
Ответ



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

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