javascript - 使用jquery查找不包含 "ul"元素的 "li"元素

标签 javascript jquery html

假设我有这个 html 代码

<ul id="mainUL">
<li>
   <ul></ul>
</li>
<li>
   <ul>
    <li>One</li>
    <li>Two</li>
   </ul>
</li>
<li>
   <ul>
   </ul>
</li>
</ul>

有没有办法找到那些不包含任何li元素的ul?我的代码非常动态,因此我很难插入类或 id 来附加这些 ul。我使用 jquery .find() 还是 jquery .children() ?我该如何应用这些$('ul')

最佳答案

您可以使用 :not() 的组合和 :has()来完成这项工作。

$("ul:not(:has(li))")

$("ul:not(:has(li))").css("border", "1px solid red");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="mainUL">
<li>
   <ul></ul>
</li>
<li>
   <ul>
    <li>One</li>
    <li>Two</li>
   </ul>
</li>
</ul>

关于javascript - 使用jquery查找不包含 "ul"元素的 "li"元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45529182/

相关文章:

javascript - 使用 jQuery 组合两个表单输入值

html - 如何取消选择选择框中的项目?

javascript - 获取歌曲的相对响度,Javascript

javascript - 如何最好地将元素名称附加到每个 HTML 元素?

javascript - 如何获取表中的所有 tr 和 td,该表中的行按 jQuery 中的属性过滤

javascript - D3 动画问题 : ease

php - 多个复选框帖子

javascript - 如何同时旋转和缩放图像?

jQuery 自定义保管箱 : how to tabindex

javascript - 勾选 "check-all"框时,勾选其他