Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Динамическое создание списка <select> и обработка события двойного клика (https://javascript.ru/forum/dom-window/21256-dinamicheskoe-sozdanie-spiska-select-i-obrabotka-sobytiya-dvojjnogo-klika.html)

Kitana 02.09.2011 19:58

Динамическое создание списка <select> и обработка события двойного клика
 
Приветствую!
Формирую динамически список в определенных колонках таблицы.К каждому элементу option добавляю обработчик события,в который передаю сам option.
for(var j=0;j<data.persons[i].person.phones.length;j++){
                            var option= document.createElement("option");
                           
                           option.ondblclick = function () { getId(option); };
                        option.setAttribute("id", data.persons[i].person.phones[j].id);
                                              option.appendChild(document.createTextNode(data.persons[i].person.phones[j].value));
В обработчике получаю значение атрибута
function getId(option) {

         alert(option.getAttribute("id"));
     }

Но получаю только значение последнего :(



Как получить значение id выбранного элемента списка?

melky 02.09.2011 23:57

необходимо отслеживать изменение значения select - обработчик выделен красными строчками
*!*
select.onchange = function() {
    alert(this[this.selectedIndex].id)
}
*/!*

for (var j = 0, option; j < data.persons[0].person.phones.length; j++) {
    option = document.createElement("option");
    option.id = data.persons[i].person.phones[j].id;
    option.appendChild(document.createTextNode(data.persons[i].person.phones[j].value));
    select.appendChild(option)
}

Kitana 03.09.2011 17:23

Благодарю Вас,сударь:) очень помогли:)


Часовой пояс GMT +3, время: 13:39.