0

可能重复:
检测最近的或父 div

我需要一些关于使用 jquery 查找元素的帮助。作为主题提示,我需要找到给定元素的容器。我已经有一个类似的代码;

$('.cancel_button').bind "click", (event) ->
    element = $(this.parentElement)
    ...
    ...

但这对我来说似乎很丑陋。取消button在一个section元素中。我想知道是否可以做类似的事情

$(this).containerElement('section')
4

2 回答 2

6

您可能正在寻找parentclosest

$(this).parent()

// or

$(this).closest('section')

您甚至可能想要组合它们,因为如果匹配,closest将返回当前元素。因此,如果您有一个div在 asection内的 a 在 a 内div

<div id="outer">
    <section>
        <div id="inner">....</div>
    </section>
</div>

...并且您想outer在事件发生时得到inner,它将是:

$(this).parent().closest('div');

但是当你开始的元素与选择器不匹配时,你就不需要它了。

于 2012-05-12T10:33:36.987 回答
2
$(this).parent(); // get parent of current object
$(this).closest('.class'); // get closest parent that have class="class"
$(this).closest('section') // get closest parent that is section element
于 2012-05-12T10:35:31.820 回答