Динамическое создание Option с обработчиком onclick()
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Динамическое создание Option с обработчиком... Expand / Collapse
Автор
Сообщение
03.11.2006 20:13
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 24.01.2008 14:59
Сообщ.: 68, Visits: 545
В цикле создаю option:

var sel = document.getElementById('opt');

for (i=0; i sel.options[i] = new Option(c[i].name, c[i].id);
}

Как мне выставить каждому option обработчик onclick?

пробовал

sel.options[i].onclick = "alert('test')" - не работает(
Сообщ. #906888
04.11.2006 10:10
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
У option нет обработчика onclick. Надо обрабатывать событие onchange для select.
Сообщ. #906891
04.11.2006 21:27
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 24.01.2008 14:59
Сообщ.: 68, Visits: 545
хм. а почему когда я ставлю вручную onclick в option все корректно отрабатывает?) проверил на ff 1.5
Сообщ. #906913
05.11.2006 10:36
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Ошибся я. По рекомендации w3c у option должно быть событие onclick. Тогда у тебя проблема в неправильном назначении обработчика. Надо писать sel.options[i].onclick = function() { alert(''test"); }; Однако на мой взгляд все равно предпочительнее обрабатывать событие onchange для элемента select, а не onclick для отдельных options-s.
Сообщ. #906918
05.11.2006 15:38
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 24.01.2008 14:59
Сообщ.: 68, Visits: 545
спасибо. получилось выкрутиться с помощью onchange)
Сообщ. #906920
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl

Время GMT +3:00, Сейчас 12:29