多个按钮上的event.preventDefault()

时间:2016-11-04 20:11:32

标签: javascript html button preventdefault

有没有办法为app上的每个按钮写一次e.preventDefault()(也许是通过创建一个函数)?我理解如何阻止按钮(链接等)的默认事件:

<button onClick={e => e.preventDefault()} /> <!--For React, but it's the same elsewhere-->

但是,我的应用程序上有很多按钮,而且我已经厌倦了为每个按钮写出来。任何帮助表示赞赏:)

2 个答案:

答案 0 :(得分:3)

你根本不应该使用内联javascript,而是使用正确的事件处理程序

var buttons = document.querySelectorAll('button'),
    fn      = function(e) { e.preventDefault() };

for ( var i = buttons.length; i--; ) {
    buttons[i].addEventListener('click', fn, false);
}

答案 1 :(得分:1)

const buttons = document.querySelectorAll('button');
for (let i = 0; i < buttons.length; i++) {
    buttons[i].addEventListener('click', e => e.preventDefault());
}