2010-12-16 3 views
0

Привет всем , если я назначить атрибут в список, как это:получить список атрибутов

<ul type_code=27> 

, как я могу получить это значение (уль значение type_code), если я знаю, что идентификатор Li = 10 (<li id=10>) ?

ответ

2

Попробуйте также:

var code = $('#li-id').closest('ul').attr('type_code'); 

Пожалуйста, обратите внимание, : «10», поскольку значение атрибута id может не работать в другом браузере.

+0

Я не думаю, что это invallid id – Vivek 2010-12-16 09:21:31

2

Идентификатор, который вы указываете («10()»), является недопустимым атрибутом идентификатора (идентификаторы не могут начинаться с цифры). Извините, IDs used with CSS не может начинаться с цифры; HTML ones can, если вы не собираетесь использовать их с помощью CSS. Но с jQuery вы часто используете селектор CSS, поэтому лучше придерживаться правил CSS.

[Edit: Я использую parents, но closest лучше, потому что он останавливается, глядя, как только он нашел первый матч. . Пожалуйста upvote jerjer для этого]

В любом случае, скажем, LI имеет идентификатор "Фред":

var code = $("#fred").closest("ul").attr("type_code"); 

например, с помощью этого HTML:

<ul type_code=27> 
    <li id='fred'>...</li> 
</ul> 

... выше код установит code на «27». Live example

Обратите внимание, что создание собственных значений атрибутов означает, что ваш HTML не будет validate. Это популярная практика, однако, настолько, что в настоящее время она специально используется в HTML5: любой атрибут с префиксом data- будет проверять. Так обновив выше:

HTML:

<ul data-type-code=27> 
    <li id='fred'>...</li> 
</ul> 

JavaScript ж/JQuery:

var code = $("#fred").closest("ul").attr("data-type-code"); 

Live example

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