采用以下示意性 html 代码:
<div>
<span id='1' cust-attr='' />
<span id='2' />
<span id='3' cust-attr='Foo' />
</div>
现在我正在寻找一个选择器,找到所有没有属性“cust-attr”或“cust-attr”值为空的 span
。
在这种情况下,这将是 1 和 2。
我尝试了以下选择器,结果如下:
span[cust-attr!=]
选择 2 和 3span[cust-attr='']
只选择 1span:not([cust-attr])
选择 2span(:not([cust-attr]),[cust-attr=''])
选择全部三个span([cust-attr=''],:not([cust-attr]))
选择 1
但是,我没有找到只选择1和2的。
你知道一种可能性吗?
请注意,我要避免:
span:not([cust-attr]),span[cust-attr='']
因为“跨度”实际上是一个更复杂的表达。
最佳答案
晚会...
... 或者您可以使用 CSS Selectors并且比两个 jQuery 答案快 10 倍...:)
document.querySelectorAll("input:not([id]), input[id='']");
关于javascript - 选择具有空属性或未指定属性的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5524132/