javascript - 如何设置全局单击监听器以从多个按钮获取值?

标签 javascript html css arrays button

我有一个按钮数组,每个按钮都有不同的值。 我需要添加一个事件监听器来监听何时单击它。 单击的按钮的值将被推送到不同的数组中。

我觉得我需要 forEach,但不太适合它。

function placeBet() {
  var betBtn_nodelist = document.querySelectorAll('.bet_amount > button');
  var betButtonsArr = Array.prototype.slice.call(betBtn_nodelist);

  for (var i = 0; i < betButtonsArr.length; i++) {
    betButtonsArr[i];
  }
}
<div class="bet_amount">
  <button class="five" value="5">5</button>
  <button class="ten" value="10">10</button>
  <button class="fifty" value="50">50</button>
  <button class="hundred" value="100">100</button>
</div>

最佳答案

您必须为数组中的每个元素附加一个click事件处理程序。

result = [];
function placeBet(){
    var betBtn_nodelist = document.querySelectorAll('.bet_amount > button');
    var betButtonsArr = Array.prototype.slice.call(betBtn_nodelist);
    for (let i = 0; i < betButtonsArr.length; i++) {
       betButtonsArr[i].onclick = function(){
         result.push(this.value);
         console.log(result);
       }
    }
}
placeBet();
<div class="bet_amount">
    <button class="five" value="5">5</button>
    <button class="ten" value="10">10</button>
    <button class="fifty" value="50">50</button>
    <button class="hundred" value="100">100</button>
</div>

关于javascript - 如何设置全局单击监听器以从多个按钮获取值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54232031/

相关文章:

javascript - 如何找出是什么 JavaScript 代码拖慢了我的页面

jquery - 是否有任何事件表明页面正文已加载?

html - 使用 webkit-image-set 时如何为非 WebKit 浏览器显示替代内容?

javascript - 在 Bootstrap 中使用 Active 类的问题

javascript - 使用子字符串方法突出显示字符串中的文本

javascript - 如何在 Node.js 中生成独立的子 Node 并重新建立通信?

javascript - 书签问题

javascript - 动态生成自定义类

javascript - 无法访问 iframe 样式高度和宽度并使用 JavaScript 更改它

html - 为什么调整导航栏大小时我的图像消失了