您能否告诉我是否有任何 DOM API 可以搜索具有给定属性名称和属性值的元素:
就像是:
doc.findElementByAttribute("myAttribute", "aValue");
更新: 在过去的几年里,情况发生了巨大的变化。您现在可以可靠地使用querySelectorandquerySelectorAll,
querySelector
querySelectorAll
现在不需要 jQuery 依赖项。如果您使用的是 jQuery,那太好了……如果您不是,您不再需要仅仅依靠它来按属性选择元素。
在 vanilla javascript 中没有很短的方法可以做到这一点,但有一些可用的解决方案。
你做这样的事情,循环遍历元素并检查属性
如果像jQuery这样的库是一个选项,你可以做的更容易一些,像这样:
$("[myAttribute=value]")
如果该值不是有效的CSS 标识符(其中包含空格或标点符号等),则需要在该值周围加上引号(它们可以是单引号或双引号):
$("[myAttribute='my value']")
你也可以做start-with, ends-with, contains, 等等…属性选择器有几个选项。
start-with
ends-with
contains