为什么JS中的按钮onclick事件不起作用

时间:2018-11-13 10:30:01

标签: javascript javascript-events onclick

当我单击输入按钮时,控制台中没有任何内容,但是我希望输入“ Hello”。

这是我的代码:

window.onload = function() {
  const btn = document.getElementsByClassName('btn-next');
  btn.onclick = function() {
    btn.click();
    console.log("Hello");
  }
};
<input type="button" class="btn-next" value=">" />

我在做什么错?

1 个答案:

答案 0 :(得分:0)

您需要执行document.getElementsByClassName('btn-next')[0];,因为getElementsByClassName将给出与该类名称匹配的元素数组,并且由于该类只有一个元素,因此请使用[0]来获取该元素的引用元素。

window.onload = function() {
  const btn = document.getElementsByClassName('btn-next')[0];
  btn.onclick = function() {
    btn.click();
    console.log("Hello");
  }
};
<input type="button" class="btn-next" value=">" />

您也可以将querySelector用于相同的目的:

window.onload = function() {
  const btn = document.querySelector('.btn-next');
  btn.onclick = function() {
    btn.click();
    console.log("Hello");
  }
};
<input type="button" class="btn-next" value=">" />