让所有没有特定班级的孩子的父母

时间:2017-08-04 09:16:16

标签: javascript jquery html arrays jquery-selectors

我想选择使用jQuery的父母的所有div,没有孩子的班级locked

示例代码:

<div class='myparent'>
    <div class='mychild locked'></div>
</div>
<div class='myparent'>
    <div class='mychild locked'></div>
</div>
<div class='myparent'>
    <div class='mychild'></div>
</div>

我觉得我真的很亲密:

$('div.myparent:not(:has(div[class=locked]))')

但这不起作用。

3 个答案:

答案 0 :(得分:7)

您可以使用类选择器,不需要属性选择器DEMO

$('.myparent:not(:has(div.locked))')

注意: - 您也可以这样做: - $('.myparent:not(:has(.locked))')

答案 1 :(得分:0)

  1. 子类并使用not()排除锁定的类,然后使用parent锁定父级
  2. &#13;
    &#13;
    $(".mychild:not(.locked)").parent().css("color","red")
    &#13;
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div class='myparent'>
        <div class='mychild locked'>1</div>
    </div>
    <div class='myparent'>
        <div class='mychild locked'>2</div>
    </div>
    <div class='myparent'>
        <div class='mychild'>3</div>
    </div>
    &#13;
    &#13;
    &#13;

答案 2 :(得分:0)

另一种选择是使用jquery filterfilter myparent locked没有$('.myparent').filter(function(){ return !$(this).find('.locked').length; }).css('color','blue');孩子 - 请参阅下面的演示:

&#13;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='myparent'>
    <div class='mychild locked'>one</div>
</div>
<div class='myparent'>
    <div class='mychild locked'>two</div>
</div>
<div class='myparent'>
    <div class='mychild'>three</div>
</div>
&#13;
MarkerDetector::Params::_minSize
&#13;
&#13;
&#13;