.querySelectorAll 如何只取所有属性的元素
.querySelectorAll how to take only elements with all attributes
如果我有那个字符串:`
document.querySelectorAll("[data-name=" + CSS.escape(variable) + "]","[class='nameclass']");
它接受具有第一个属性的所有元素和具有第二个属性的所有元素。
如果只接受具有每个属性的元素,我该怎么办?
看来您正在寻找这个选择器:
document.querySelectorAll(".nameclass[data-name=" + CSS.escape(variable) + "]");
请注意,我使用 .nameclass
作为 class 选择器,这与 [class=nameclass]
不同。第一个选择其中一个 class 是 nameclass
的元素,第二个选择只有 nameclass
class 属性的元素。
如果要选择只有 nameclass
class 属性的元素,选择器应该是:
"[class=nameclass][data-name=" + CSS.escape(variable) + "]"
我已经解决了:
document.querySelectorAll("[data-name=" + CSS.escape(item) + "][class='placeholder matched']");
删除 ,
感谢大家的回复
如果我有那个字符串:`
document.querySelectorAll("[data-name=" + CSS.escape(variable) + "]","[class='nameclass']");
它接受具有第一个属性的所有元素和具有第二个属性的所有元素。
如果只接受具有每个属性的元素,我该怎么办?
看来您正在寻找这个选择器:
document.querySelectorAll(".nameclass[data-name=" + CSS.escape(variable) + "]");
请注意,我使用 .nameclass
作为 class 选择器,这与 [class=nameclass]
不同。第一个选择其中一个 class 是 nameclass
的元素,第二个选择只有 nameclass
class 属性的元素。
如果要选择只有 nameclass
class 属性的元素,选择器应该是:
"[class=nameclass][data-name=" + CSS.escape(variable) + "]"
我已经解决了:
document.querySelectorAll("[data-name=" + CSS.escape(item) + "][class='placeholder matched']");
删除 ,
感谢大家的回复