是否有一种简单的方法来获取包含 data-*
属性的所有元素的列表 without 使用 jQuery(并且希望不迭代整个 DOM 树)?
我可以使用 jQuery 找到很多答案,但我不能在我的项目中使用它,我也不能使用纯 Javascript 找到答案。
例如,如果我有这个 HTML:
<input data-mydata="data1">
<input data-mydata="data2">
<div data-mydata="data3"></div>
<div data-mydata="data4"></div>
<input>
<div></div>
然后获取包含 data-mydata
的任何类型的所有元素的列表?
我尝试实现的是根据数据-*以及数据值从某些元素中获取数据进行存储。
我知道我可以将 name
属性与 getElementsByName
一起使用,但这不可能在我的项目中使用,因为元素的名称已设置用于其他目的。
而且我相信 querySelectorAll
只适用于 CSS(?)。
最佳答案
就是这样:
var elements = document.querySelectorAll('[data-mydata]');
关于javascript - 使用 jQuery 选择具有数据属性 *not* 的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17752629/