Javascript单击事件侦听器未触发

时间:2018-01-11 22:05:14

标签: javascript

我正在尝试制作一个计算器,我需要将click事件分配给输入。但是,我是JavaScript的新手,我无法弄清楚它为什么不起作用。

onLoad = function assign() {
  var C = document.querySelectorAll('.click');

  for (i = 0; i < C.length; i++) {
    C[i].addEventListener('click');
    alert('bob');
  }
}
<div style="max-width: 960px; margin: 0px auto; background-color: green;">
  <section id="cal-container">
    <form name="calculator">
      <input type="text" name="answer">
      <br>

      <input class="click" id="1" type="button" value=" 1 ">
      <input class="click" id="2" type="button" value=" 2 ">
      <input class="click" id="3" type="button" value=" 3 ">
      <input class="click" id="+" type="button" value=" + ">
      <br>

      <input class="click" id="4" type="button" value=" 4 ">
      <input class="click" id="5" type="button" value=" 5 ">
      <input class="click" id="6" type="button" value=" 6 ">
      <input class="click" id="-" type="button" value=" - ">
      <br>

      <input class="click" id="7" type="button" value=" 7 ">
      <input class="click" id="8" type="button" value=" 8 ">
      <input class="click" id="9" type="button" value=" 9 ">
      <input class="click" id="*" type="button" value=" * ">
      <br>

      <input class="click" id="v" type="button" value=" C ">
      <input class="click" id="0" type="button" value=" 0 ">
      <input class="click" id="=" type="button" value=" = ">
      <input class="click" id="/" type="button" value=" / ">
      <br>
    </form>
  </section>
</div>

2 个答案:

答案 0 :(得分:2)

通常,您的脚本标记应位于body标记内。

您可能想要使用window.onload,而不只是join,请注意小写字母L.

最后,当使用addEventListener时,第二个参数应该是一个在触发事件时将被调用的函数。

&#13;
&#13;
[XmlIgnore]
public bool ValueSpecified { get; set; }
&#13;
onLoad
&#13;
&#13;
&#13;

答案 1 :(得分:1)

您的事件侦听器格式不正确。偶数监听器有两个参数。参数one是要监听的事件类型(你有正确的)但第二个参数是事件发生时要调用的函数。因此,请查看事件监听器文档并查看其结构。

尝试这样的事情:

enter code here  C[i].addEventListener('click', function(){the stuff in here will be executed when the event occurs});