用样式过滤一个js查询

Filtering a js query with the style

本文关键字:一个 js 查询 样式 过滤      更新时间:2023-09-26

我有一个html表元素,我隐藏所有的tr和我想得到所有隐藏tr元素与这个查询:

document.querySelectorAll("tr[style='display: none']");

但是这个查询返回一个空列表,我不明白为什么。是我的选择是错误的,还是不可能得到这样的tr元素?

提前致谢

document.querySelectorAll('tr[style*="display: none"]');

您的选择器对我来说似乎是正确的。无论如何,它将检索与style属性完全匹配的所有TR元素。如:

<tr style='display: none'>[...]</tr>

可以但是

<tr style='display: none; background-color: red'>[...]</tr>

将不被检索。

请考虑在相关标签中添加一个类

如果你的元素有多个样式,你可以使用:

var elements = [];
var temp = document.querySelectorAll('tr[style]');
for (var i = 0; i < temp.length; i++) {
    if (temp[i].style.display == 'none')
        elements.push(temp[i]);
}