我使用原生js,并且我需要从data中获取值--给我点击的所有元素赋值。
window.onload = function() {
let btn = document.getElementsByClassName('btn');
for( let i = 0; i < btn.length; i++ ) {
btn[i].addEventListener( "click" , function(e) {
let dataBtn = e.getAttribute('data-btn');
console.log(dataBtn);
});
}
};但是我得到了错误(e.getAttribute不是一个函数)
我可以在原生js中获取并使用它吗?
发布于 2017-04-27 17:24:38
通过调用this.getAttribute('data-btn')或btn[i].getAttribute('data-btn');,可以在事件处理函数中访问当前单击的元素的'data-btn'属性。
代码:
let btn = document.getElementsByClassName('btn');
for (let i = 0, len = btn.length; i < len; i++) {
btn[i].addEventListener('click' , function() {
let dataBtn = this.getAttribute('data-btn');
console.log(dataBtn);
});
}<a class="btn btn-default" data-btn="1" href="#" role="button">Link</a>
<button class="btn btn-default" data-btn="2" type="submit">Button</button>
<input class="btn btn-default" data-btn="3" type="button" value="Input">
<input class="btn btn-default" data-btn="4" type="submit" value="Submit">
https://stackoverflow.com/questions/43653601
复制相似问题