Я использую следующий код, и я хотел бы иметь возможность получить атрибут ID из <li> (идентификатор сообщения), который связан с <a> при нажатии, но я не могу понять, как это сделать сделай это. Кто-нибудь может мне помочь?
<li>
<a>
<li id="custom_latest_news-5" class="widget custom_widget_latest_news"> <div class="widget-title"> <a href="http://test.dynedrewett.com/news-and-events/">Latest news</a> </div> <div class="widget-content"> <ul class="link-list ajax-links"> <li id="post-5521"><a href="http://mydomain.com/uk-news/last-call-for-self-assessment-tax-forms/">Last call for self-assessment tax forms</a></li> <li id="post-5523"><a href="http://mydomain.com/uk-news/young-drivers-gambling-on-no-insurance/">Young drivers gambling on no insurance</a></li> <li id="post-5520"><a href="http://mydomain.com/uk-news/tenants-forced-to-abandon-pets/">Tenants forced to abandon pets</a></li> </ul> </div> </li>
Вот тот JS, который у меня сейчас есть -
/** * Intercept a click for page refresh and run the page refresh JS */ $(function(){ $('.ajax-links').delegate('li a', 'click', function(e){ /** Prevent the click from doing anything */ e.preventDefault(); /** Get the post ID */ var post_id = '???'; }); });
Спасибо.
Я считаю, что вам нужно
var post_id = $(this).parent().attr('id');
Пример: http://jsfiddle.net/FwqGT/
Ли с идентификаторами записей в вашей разметке на самом деле не братья и сестры, а родители.
Это должно сделать это:
var post_id = $ (this) .parent ().attr ( 'ID'));
Вы можете использовать:
var post_id = $(this).parent().attr("id");
Если вам нужно получить следующее (брат)
var next_id = $(this).parent().next().attr("id");