2015-09-17 2 views
-5

Хотите, чтобы мои перечисленные элементы добавляли ID на клик, как я могу это сделать? Или что я делаю неправильно?JQuery добавить и удалить атрибут по клику

$('.ex-menuLi #tt').attr('id', 'test'); 
$('.ex-menuLi').on('click', function(){ 
    $(this).attr('id', 'test').siblings().removeAttr('id', 'test'); 
}); 
<nav id="extraMenu"> 
    <!--<ul id="ex-menuUl"> --> 
    <li class="ex-menuLi" id="ex-menuLiId"><a href="#" class="test1" id="tt">Test</a></li> 
    <li class="ex-menuLi" id="ex-menuLiId"><a href="#" class="test1">Test2</a></li> 
    <li class="ex-menuLi" id="ex-menuLiId"><a href="#" class="test1">Test3</a></li> 
<!--</ul>--> 
</nav> 
#test{ 
    text-decoration:underline; 
} 
+4

идентификаторы должны быть уникальными. –

+0

и делать то же самое с классом, и вы делаете свою работу. –

+4

Зачем вы прокомментировали открытие и закрытие тега вашего списка? Без этих тегов ваш HTML недопустим. Также «* ... иначе он не будет работать с остальной частью моего кода *», - тогда остальная часть вашего кода нуждается в исправлении, не ломайте одну вещь, чтобы учитывать ошибки в других местах, делайте это правильно/безопасно и с достоверностью. –

ответ

0

// Вы можете сделать что-то вроде это, чтобы установить UniqueID

$('.ex-menuLi').each(function(index){ 
    $(this).attr('id', index) 
}); 
Смежные вопросы