javascript - 将事件监听器添加到 HTML 元素集合

标签 javascript

我知道 getElementsByTagNamegetElementsByClassName 需要索引标识符才能将对象绑定(bind)到事件监听器。

所以问题是,如何将事件监听器添加到使用 getElementsByTagName getElementsByClassName 找到的 HTML 元素集合?

<input class="inputs" type="submit" value="Hello" />
<input class="inputs" type="submit" value="World" />

var inputElem = document.getElementsByTagName('input');
inputElem.addEventListener('click', function(){
    alert(this.value);
}, false);

我知道如何在 jQuery 中执行此操作,但我想知道如何使用纯 JS 执行此操作。

最佳答案

不建议为它们中的每一个添加事件监听器。可能这会有所帮助:

http://jsfiddle.net/b8gotLL6/

document.getElementById('parent').addEventListener('click', function(e){
alert(e.target.value);
})

如果您只想使用 getElementsByTagNamegetElementsByClassName,那么我想您需要迭代返回的数组。

关于javascript - 将事件监听器添加到 HTML 元素集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27834226/

相关文章:

javascript - 将组中的复选框项目乘以相对数字字段

javascript - 检查网站是否可访问 JQuery/Javascript

javascript - 为什么我应该使用backbone.js或spine.js

javascript - 你能在javascript中指定一个引用表达式吗?

javascript - 使用 AngularJS 从指令设置范围变量

javascript - window.load 不起作用

javascript - HTML 中的多个音频文件,如果单击两个,较旧的文件应停止播放

javascript - 使用 api.updateRowData(transaction) 删除一行对数据源没有影响

javascript - 每次路由更改时不会调用 Router.match

javascript - 有没有办法将html5视频的来源作为用户的输入?