Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Применение библиотек > jquery, динамическое создание списка


Автор: klem4 7.8.2011, 16:08
Доброго времени суток. По работе пришлось столкнуться с jquery, раньше работать с ним не приходилось, по этому изучаю в процессе. Создаю пустой список для дальнейшего заполнения, но после создания не могу получить доступ к элементу по id. 

Код создания списка:
Код

var id = 'context_menu_' + mid;                                                                                                                          
                                                                                                                                                       
var ul = $("<ul></ul>")                                                                                                                                  
.attr('id', id)
.addClass('contextMenu');                                                                                                                                 
                                                                                                                                                             
console.log('-----------------------');                                                                                                                  
console.log(mid);                                                                                                                                        
console.log($(ul));                                                                                                                                      
console.log($('#'+id));                                                                                                                                  
console.log('-----------------------');                 


Вывод в консоль:
Код

-----------------------
1311164
[ul#context_menu_1311164.contextMenu]
[]
-----------------------


То есть по id элемент не доступен.
Что я делаю не так ? Заранее спасибо!

Автор: Amphiluke 7.8.2011, 17:10
Для того, чтобы элемент был доступен по id, он должен быть включен в дерево DOM.
Т.е. вы упускаете вставку созденного элемента UL в документ.
Код

var ul = $("<ul></ul>")                                                                                                                                  
    .attr('id', id)
    .addClass('contextMenu')
    .appendTo($("body"));

Автор: klem4 7.8.2011, 17:59
Спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)