按类查找父级

时间:2017-01-19 05:45:33

标签: jquery

HTML:

<div id="aaa" class="p">
    <div id = "bbb">
        <div id="actor" onclick = "testParent(this)">
            test parent
        </div>
    </div>
</div>

JS:

testParent = function(obj){
    alert($(obj).parent(".p").id);
}

我认为这应该警告aaa,但事实并非如此。

这不是一种按类找到父母的方式吗?

修改 我知道最接近的可以做到这一点但更具体地说它是父母,不是吗?那么jquery没有针对此的具体实现吗?

Here is fiddle

4 个答案:

答案 0 :(得分:2)

使用需要使用parents()它会找到与class .p匹配的父级,而attr()会获得匹配父级的ID。见下面的代码。

&#13;
&#13;
testParent = function(obj){
    alert($(obj).parents(".p").attr("id"));
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="aaa" class="p">
    <div id = "bbb">
        <div id="actor" onclick = "testParent(this)">
            test parent
        </div>
    </div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

您必须使用.closest()并使用obj而不使用$()

应该是这样的:

alert(obj.closest(".p").id);

testParent = function(obj) {
  alert(obj.closest(".p").id);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div id="aaa" class="p">
  <div id="bbb">
    <div id="actor" onclick="testParent(this)">
      test parent
    </div>
  </div>
</div>

答案 2 :(得分:1)

试试这段代码

JAVASCRIPT -

testParent = function(obj){
 alert($(obj).closest(".p").attr('id'));
}

答案 3 :(得分:1)

尝试:

CRUDDbContext

这是非常简单和简短的代码。