javascript - jQUERY:计算没有类的元素
问题描述
我想获取具有类assigned-names
但没有名为的类的跨度标签的数量hidden
。以下是 HTML 代码:
<div class="assigned-values">
<span class="assigned-names">
<span class="name">Test 1</span>
</span>
<span class="assigned-names hidden">
<span class="name">Test 2</span>
</span>
<span class="assigned-names hidden">
<span class="name">Test 3</span>
</span>
</div>
所以,对于上面的 HTML,有类assigned-names
但没有类的 span 标签的数量hidden
是1。
我尝试了以下代码,但它给我的长度为 2:
$('.assigned-values').find('span.assigned-names:not(:has(.hidden))').length
解决方案
您可以使用函数简单地过滤掉不需要的元素not()
:
const elems = $(".assigned-values > .assigned-names").not(".hidden");
console.log(elems.length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="assigned-values">
<span class="assigned-names">
<span class="name">Test 1</span>
</span>
<span class="assigned-names hidden">
<span class="name">Test 2</span>
</span>
<span class="assigned-names hidden">
<span class="name">Test 3</span>
</span>
</div>
推荐阅读
- java - 记录未保存在 mysql DB 中
- node.js - 为什么我的 axios 调用没有返回响应?
- swift - UIPickerView Swift 5 的语法问题
- sql - 有一个 airbnb 数据集,需要使用 join-function 确定哪些主机在同一位置有多个公寓
- c++ - 相同的声明和类型编译器错误。(xyz* 类型的 arg 与 xyz* 类型的参数不兼容)
- python - 运行鼻子测试时禁用覆盖
- python - Einsum 比 n 模式张量矩阵乘积的显式 Numpy 实现慢
- python - 当两者都存在时,如何返回较小的 OR 运算符正则表达式?
- javascript - 无法从它的激活方法访问放置在花式树源节点中的函数变量
- r - 错误:安装包“游侠”的退出状态非零