首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何检查子元素是否没有使用jQuery的类

如何检查子元素是否没有使用jQuery的类
EN

Stack Overflow用户
提问于 2015-06-13 19:52:34
回答 2查看 3.6K关注 0票数 0

我试图弄清楚如何检查父div是否有一个没有特定类的子p元素。

因此,例如。

代码语言:javascript
运行
复制
    <div id="one" class="item">
        <p class="A"></p>
        <p class="B"></p>
        <p class="C"></p>
    </div>

    <div id="two" class="item">
        <p class="B"></p>
        <p class="C"></p>
    </div>

如果div没有类"A“的p元素,我想隐藏这个div。

我该怎么做?

我试过:

代码语言:javascript
运行
复制
if (jQuery(".item > p.A").length <= 0){
    //run code here
}

但这似乎行不通

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-13 19:53:42

您可以使用jQuery *has()*不(),如

代码语言:javascript
运行
复制
$('div:not(:has(p.A))').hide();

代码语言:javascript
运行
复制
$('div:not(:has(p.A))').hide();
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<div id="one" class="item">
        <p class="A">A</p>
        <p class="B">B</p>
        <p class="C">C</p>
    </div>

    <div id="two" class="item">
        <p class="B">B</p>
        <p class="C">C</p>
    </div>

,您可以采用迭代方法

代码语言:javascript
运行
复制
$('div').each(function() {
  if ($(this).has('p.A').length == 0) {
    $(this).hide();
  }
});

代码语言:javascript
运行
复制
$('div').each(function() {

  if ($(this).has('p.A').length == 0) {
    $(this).hide();
  }
});
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<div id="one" class="item">
  <p class="A">A</p>
  <p class="B">B</p>
  <p class="C">C</p>
</div>

<div id="two" class="item">
  <p class="B">B</p>
  <p class="C">C</p>
</div>

票数 3
EN

Stack Overflow用户

发布于 2015-06-13 20:00:01

你也可以这样做。在我看来,这更好地描述了你正在做的事情,并且当你把它读回来时会更容易。小提琴:http://jsfiddle.net/ayxdm7y3/

代码语言:javascript
运行
复制
if ($('div').children().hasClass("A")){
   console.log("yes");
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30822907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档