我正在尝试使用核心javascript获取每个元素的“数据编号”。我无法在这里使用jquery,因为我正在编辑插件。
但我无法获取数据
HTML:
<ul>
<li data-number="2" class="number">1</li>
<li class="number">2</li>
<li class="number">3</li>
</ul>
JS:
for(i=0;i<3;i++){
var x = document.getElementsByClassName('.'+number)[i].getAttribute("data-number");
console.log(x); // i am not getting the result.
}
提前致谢
答案 0 :(得分:2)
如果您使用getElementsByClassName
并且name
是“数字”,则删除该点:
document.getElementsByClassName(name)
您似乎将它与querySelectorAll混淆,Fixed fiddle将CSS选择器作为参数。
在你的小提琴中,你也忘了定义名字:
var name = "number";
的 {{3}} 强>
答案 1 :(得分:2)
getElementsByClassName
采用类的名称,而不是选择器。
document.getElementsByClassName('number')
简单地遍历元素也是一件好事。
var elements = document.getElementsByClassName('number');
for (var i = 0; i < elements.length; i++){
var x = elements[i].getAttribute('data-number');
console.log(x);
}