2014-11-12 10 views
2

У меня есть общее меню слева в отдельном файле с моих страниц, чтобы я мог обновить его в одном месте.Добавить класс в динамически добавленный элемент

Я загружая его на страницу в .js файле следующим образом:

$(function() { 
    $("#left-nav").load("templates/left-nav.html", function() { 
     ... 
    }); 

    ... 
} 

Я хотел бы быть в состоянии установить пункт нав-лист для страницы, чтобы выбрать. Что-то вроде этого:

$("#calendar").addClass("selected"); 

... где #calendar это идентификатор элемента списка в левой-nav.html файл шаблона.

Все, что я читал говорит, что я должен назвать addClass как обратный вызов после того, как я загружаю в файле, но следующий, кажется, не работает:

$(function() { 
    $("#left-nav").load("templates/left-nav.html", function() { 
     $("#calendar").addClass("selected"); 
    }); 

    ... 
} 

Вопрос: Можно ли добавлять классы к динамически добавленному контенту на странице, и если да, то как мне это сделать? Благодаря!

+1

Уверены, что результаты имеют элемент с идентификатором 'calendar'? В вашем тексте вы указываете, что идентификатор «# calendar». Я просто хочу подтвердить, что это опечатка, и что вы имели в виду, что запрос «# calendar», а идентификатор - «calendar». – Shriike

+0

. После загрузки шаблона в консоли, что делает '$ ('# calendar'). length' output? – Tomanow

+0

Можете ли вы опубликовать 'templates/left-nav.html' HTML? – dfsq

ответ

1

Код верный как указано, что left-nav.html содержит элемент с идентификатором calendar.

Завершенное событие запускается после добавления HTML в DOM в соответствии с документацией jQuery.

+0

Еще раз спасибо, приятель! – Jon