javascript - 防止点击功能多次触发

标签 javascript arrays

我试图创建一个简单的点击函数,但是当我这样做时,它会触发数组中项目数量的确切次数。因此,如果我单击按钮,我会显示它会触发 3 次,因为数组中有 3 个项目(湖人队、骑士队、太阳队)。我的问题是如何防止它发射 x 次?

var TeamPlayers = [{
  team: 'Lakers',
  Players: ['Russell', 'Clarkson', 'Ingram', 'Randle', 'Zubacs']
}, {
  team: 'Cavs',
  Players: ['Irving', 'Smith', 'LeBron', 'Love', 'Thompson']
}, {
  team: 'Suns',
  Players: ['Ulis', 'Booker', 'Warren', 'Chriss', 'Len']
}]

for (var i = 0; i < TeamPlayers.length; i++) {
  var TeamPlayersVar = TeamPlayers[i].team
  // console.log('outside loop',TeamPlayers[i].team);

  $('.leftPlayer').append('<button class="leftButtons">' + TeamPlayers[i].team + '</button>' + '<br>')
  $(document).on('click', '.leftButtons', function(){
    console.log(this)
  });
}

最佳答案

我建议使用 id 来完成此操作。这应该可以解决你的问题。因为点击将使用 id 进行注册

for (var i = 0; i < TeamPlayers.length; i++) {
  var TeamPlayersVar = TeamPlayers[i].team
  // console.log('outside loop',TeamPlayers[i].team);

  $('.leftPlayer').append('<button id="btn'+i+'" class="leftButtons">' + TeamPlayers[i].team + '</button>' + '<br>')
  $("#btn"+i).click(function(){
    console.log(this)
  });
}

关于javascript - 防止点击功能多次触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44106084/

相关文章:

arrays - VBA Excel : which one is better and faster: using one variant matrix for a range or several arrays for each column?

javascript - 如何取消设置数组中的条目?

javascript - 为函数内的全局数组赋值

javascript - 通过 javascript 与开发人员控制台测量时的不同延迟时间

emacs 的 Javascript 实现

c# - 如何在 C# 中优化用于合并排序数组的函数

php - 使用 CFHTTP 将 HTML 表单数组提交给 PHP

c# - 制表符分隔的txt文件从字符串数组中读取int值

javascript - 不显示此警报 ---> 警报 ("I am inside change");

javascript - PHP 在页面上退出 ajax abort()