2011-06-26 32 views
0
<div class="apple"> 
    <div class="abc"> 
     <input id="go"> 
    </div> 
</div> 


$("#go").click(function(){ 
    $(this).parent('.apple').hide(); // this doesn't work. 
    $(this).parent().parent().hide(); //this works 
}); 

我想让.parent('.apple')工作。怎么来.parent()不工作?

回答

5

jQuery.parent() function文档:

[...]的。家长()和.parent()方法是相似的,不同之处在于后者仅在DOM树上传送单个级别。 [...]

换句话说,使用jQuery.parents()而不是jQuery.parent()

+0

我正要发布这个答案,但你打败了我。你应该补充一点,'.parent(“。selector”)'和'.parent()。filter(“。selector”)'是一样的。 – Na7coldwater

1

输入的父母是您的div与类abc。这就是为什么它不起作用。你想用父母复数上去父链:

$( “#去”)点击(函数(){

$(this).parents('.apple').hide(); 

});

请参阅此链接的详细信息:http://jqueryminute.com/jquery-parent-vs-parents/

+0

我希望JQuery上升到每个父级,并找到与“apple” – TIMEX

+0

相匹配的父级,您希望使用“父母”复数,查看我的更新。 – brendan

相关问题