在 jquery 中,我试图找到一种方法来搜索 dom 直到找到选择器。例如。
提供了这个结构:
<span data-type="contact" data-filter="4" id="buyer-lookup" class="uneditable-input contact-lookup" data-original-title="" title="">Jeff</span>
<div class="popover">
<div class="arrow"></div>
<h3 class="popover-title"><strong>Jeff</strong></h3>
<div class="popover-content">
<address style="margin:0;"> MO<br></address>
<a data-id="70" data-type="contact" class="pull-right edit-contact" href="#">Edit</a>
<div class="clear"></div>
</div>
</div>
单击“.edit-contact”时,我想向上搜索,直到找到“span.contact-lookup”。我可以使用 parent 几次来获得我想要的东西,但是有没有更简洁的方法,你可以指定 $(this).searchUpFunction('span.contact-lookup'); 所以它会从这里开始搜索,直到找到 span.contact-lookup? .prev 似乎没有搜索父母。
$('.edit-contact').click(function(){
var filter = $(this).parent().parent().prev('span.contact-lookup').data('filter');
alert(filter);
});