所以,伙计们,基本上我需要找到的东西:
----&GT;所有<li>
<ul>
没有任何课程。
在此示例中,我只想要评论<li>
的{{1}}父级:
HTML
<ul>
我了解<ul id="myList">
<li>
<a>Item 1</a>
<ul class="someClass">
</ul>
</li>
<li> <!--------- Just Need This One ---------->
<a>Item 2</a>
<ul>
</ul>
</li>
<li>
<a>Item 3</a>
<ul class="justAnotherClass">
</ul>
</li>
</ul>
,所以我尝试了类似的内容:
.not("[class]")
这显然不起作用,因为jQuery正在寻找具有嵌套$('#myList li').has('ul').not("[class]")
但没有任何类的<li>
。
所以,伙计们,有人可以帮忙吗? :)
答案 0 :(得分:1)
而不是使用
$('#myList li').has('ul').not("[class]")
你可以使用
$('#myList > li').has('ul:not([class])')
您也可以使用此选择器
$('#myList > li:has(ul:not([class]))')
$('#myList > li:has(ul:not([class]))').css('background' , 'red');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="myList">
<li>
<a>Item 1</a>
<ul class="someClass">
</ul>
</li>
<li>
<a>Item 2</a>
<ul> <!--------- Just Need This One ---------->
</ul>
</li>
<li>
<a>Item 3</a>
<ul class="justAnotherClass">
</ul>
</li>
</ul>
答案 1 :(得分:1)
使用filter()
而不是li
,然后检查没有任何ul
class
的儿童.length
,
$('#myList li').filter(function(){
return $('ul:not([class])',this).length > 0 //$('child','context') selector
//or $('> ul:not([class])',this) in case of direct <ul>
});
var $li = $('#myList li').filter(function(){
return $('ul:not([class])',this).length > 0 //$('child','context') selector
});
console.log($li)
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<ul id="myList">
<li>
<a>Item 1</a>
<ul class="someClass">
</ul>
</li>
<li>
<a>Item 2</a>
<ul> <!--------- Just Need This One ---------->
</ul>
</li>
<li>
<a>Item 3</a>
<ul class="justAnotherClass">
</ul>
</li>
</ul>
&#13;
答案 2 :(得分:0)
尝试$('#myList li ul').filter(':not([class])')
:
console.log($('#myList li ul').filter(':not([class])').html());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<ul id="myList">
<li>
<a>Item 1</a>
<ul class="someClass">
</ul>
</li>
<li>
<a>Item 2</a>
<ul> <!--------- Just Need This One ---------->
</ul>
</li>
<li>
<a>Item 3</a>
<ul class="justAnotherClass">
</ul>
</li>
</ul>
答案 3 :(得分:0)
我真的很讨厌“太短暂无法回答”....
$('#myList li > ul:not([class])')
似乎是最简单的工作吗?