如何从20个按钮列表中找到单击的按钮? - Javascript

时间:2018-02-13 11:32:20

标签: javascript javascript-events

我的第20页按钮(开始和停止)每个开始和停止都属于一个特定的div,并且应该在那里启动一个计时器。

我需要确定点击开始按钮的时间并知道点击它的位置。

var buttons = document.getElementsByTagName("button"); //returns a HTMLCollection
for(var i = 0; i < buttons.length; i++)
{
   buttons[i].addEventListener("click", function()   {buttonsControl(buttons);}, false);
}

function buttonsControl(buttons)
{
  alert(buttons[2].innerHTML);
}

我尝试单独传递i作为参数,它总是返回数组的最后一个索引。 在我尝试将整个阵列和我一起发送但是它不起作用后,我得到:

TypeError: buttons[i] is undefined

如何确切地确定点击了哪个按钮?

修改

HTML

        <div class="timer">
          <button type="button" class="btn btn-primary start">start</button>
          <button type="button" class="btn btn-danger stop">stop</button>
        </div>

4 个答案:

答案 0 :(得分:2)

试试这个:

var buttons = document.getElementsByTagName("button"); //returns a 
Array.from(buttons).forEach((ele, index) => ele.addEventListener("click", function() {
  alert('you click button ' + index)
}, false))
<div class="timer">
  <button type="button" class="btn btn-primary start">start</button>
  <button type="button" class="btn btn-danger stop">stop</button>
</div>

答案 1 :(得分:2)

您需要声明mono /opt/foo/bar.exe nogui您的变量let

i

&#13;
&#13;
for (let i = 0; i < buttons.length; i++) {
     ^
&#13;
var buttons = document.getElementsByTagName("button"); //returns a nodelist
for (let i = 0; i < buttons.length; i++) {
  buttons[i].addEventListener("click", function() {
    buttonsControl(this, i);
  }, false);
}

function buttonsControl(button, i) {
  console.log(i);
  console.log(button.className);
}
&#13;
&#13;
&#13;

资源

  • let
      

    <div class="timer"> <button type="button" class="btn btn-primary start">start</button> <button type="button" class="btn btn-danger stop">stop</button> </div>语句声明一个块作用域局部变量,可选择将其初始化为一个值。

答案 2 :(得分:1)

您可以通过javascript事件定位点击按钮。

git rm --cached <filename>

答案 3 :(得分:0)

您可以使用此

捕获值id类等

&#13;
&#13;
Dim heading As String = "<span class=^media-prefix ^></span>"
&#13;
function btn(e){
alert(e.value);
}
&#13;
&#13;
&#13;