我试图弄清楚如何检查父div是否有一个没有特定类的子p元素。
因此,例如。
<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。
我该怎么做?
我试过:
if (jQuery(".item > p.A").length <= 0){
//run code here
}但这似乎行不通
谢谢
发布于 2015-06-13 19:53:42
$('div:not(:has(p.A))').hide();
$('div:not(:has(p.A))').hide();<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>
或,您可以采用迭代方法
$('div').each(function() {
if ($(this).has('p.A').length == 0) {
$(this).hide();
}
});
$('div').each(function() {
if ($(this).has('p.A').length == 0) {
$(this).hide();
}
});<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>
发布于 2015-06-13 20:00:01
你也可以这样做。在我看来,这更好地描述了你正在做的事情,并且当你把它读回来时会更容易。小提琴:http://jsfiddle.net/ayxdm7y3/
if ($('div').children().hasClass("A")){
console.log("yes");
}https://stackoverflow.com/questions/30822907
复制相似问题