2009-11-09 64 views
1
我有我的HTML选择某一个元素的问题

的jQuery选择唯一的项目

当我点击带班“event_rsvp”的链接,我想实现的跨度的HTML与下一李“有兴趣的”类 我已经尝试过最亲近的,试过走出去的父母,我如何告诉一个人与其他人交谈。

<li rel="101590"><span class="rsvp-status">Are You Going? –&nbsp;<a href="javascript:;" class="event_rsvp" rel="attending">RSVP</a></span></li> 

<li rel="101590"><span class="interested-status"> <a href="javascript:;" class="event_likeit" rel="likeit"> Like It?</a></span></li> 

重要 一提的是,这是一个循环这也可能是重要的,我只需要一个点击它来实现。

回答

3

您正在寻找处理jQuery的兄弟姐妹()选择。在 这个特定的情况下,你想用下一个()检索下一个匹配的LI的兄弟。

$('.rsvp_status').click(function() { 
    // get the next LI with matching class 
    $(this).parents().next('.interested-status'); 
}); 
+0

这工作,但作为父母不是父母 – matthewb 2009-11-09 01:01:49

1

您可以通过导航来完成。该链接位于列表元素中,并且所需的跨度位于下一个子元素中,因此顺序为:parent - > next - > child span。

$("a.event_rsvp").click(function() { 
    $(this).parent().next().children("span.interested-status").addClass('whatever"); 
    return false; 
}); 
0
$('a.event_rsvp').click(function() { 
    $(this).parents('li:first').next().find('span:first').addClass('interested-status'); 
    return false; 
}); 

这可能与越来越父李指数和未来marging()到find()方法用于一个查询进行优化。