2013-11-19 2 views
3

У меня есть список. Я хочу получить элемент id, который имеет класс active.Получите элемент с активным классом?

<ul class="nav nav-tabs" id="nav"> 
    <li class="active" id="day" onclick="changeDur('day')"><a data-toggle="tab">Day</a></li> 
    <li id="week" onclick="changeDur('week')"><a data-toggle="tab">Week</a></li> 
    <li id="month" onclick="changeDur('month')"><a data-toggle="tab">Month</a></li> 
    <li id="year" onclick="changeDur('year')"><a data-toggle="tab">Year</a></li> 
</ul> 

Вот что я пытаюсь?

var period_val = $("#nav.active").attr('id'); 
alert(period_val) 

Это дает мне undefined.

Где я ошибаюсь?

ответ

9
var period_val = $("#nav .active").attr('id'); 

Для того, чтобы выбрать элементы потомства, вам нужно пространство.

+0

Спасибо. Простая ошибка. –

4

var period_val = $("#nav .active").attr('id'); - необходим пробел после «#nav», в противном случае вы ищете UL, который имеет идентификатор «нав» и класс «активный»

Ребенок-селектор, как указано выше, также будет работать.

Просто, чтобы сделать мой пост немного более полезным здесь ссылки:

CSS selectors

Additional jQuery selectors

Смежные вопросы