javascript - 在未知数量的按钮上添加 EventListener
问题描述
我有一个问题,我有一个 for 循环,它附加一些数据并构建一个表。
for (var p = 0; p < Tbarray.length; p++)
{
if (notfirsttime == 'false')
{
$("#Ttable").append('<tr><th>Course</th><th>Places left</th><th>Time</th><th>Date</th></tr>');
$("#Ttable").append('<tr><td>' + Tbarray[p][0] + '</td><td>' + Tbarray[p][3] + '</td><td>' + Tbarray[p][2] + '</td><td>' + Tbarray[p][1] + '</td><td><button role="button" id="Signupbutton'+p+'">Sign Up</button></td></tr>');
}
notfirsttime = 'true';
} else
{
$("#Ttable").append('<tr><td>' + Tbarray[p][0] + '</td><td>' + Tbarray[p][3] + '</td><td>' + Tbarray[p][2] + '</td><td>' + Tbarray[p][1] + '</td><td><button role="button" id="Signupbutton'+p+'">Sign Up</button></td></tr>');
}
}
现在这段代码还在行的末尾添加了一个按钮,我可以做一百左右
var buttonSignup = document.getElementById("Signupbutton0");
if (buttonSignup) {
buttonSignup.addEventListener('click', test);
}
然后至少前 100 个按钮会起作用,但我不知道会有多少行。这将上升和下降。我正在寻找一种更好的方法来做到这一点。如果有人有一些非常有用的想法。
解决方案
推荐阅读
- javascript - 使用 JavaScript 生成带有大写小写数字和符号的密码的脚本
- arrays - 将项目附加到数组时崩溃
- gn - 如何使共享库不链接到其在 gn 中的部门
- docker - 放两个nginx系列
- io - 使用嵌套隐式循环将二维数组写入未格式化文件的最佳方法
- image - 在 Genexus 16 的新环境中加载图像时出错
- node.js - 关键依赖项:require 函数的使用方式是无法静态提取依赖项 - NodeJS、Express 和 Webpack
- entity-framework - Entity Framework6 中的 HasConversion 函数
- c++ - 如何使用两个向量打印给定输入字符串中每个单词的频率?
- asp.net - 项目在错误的本地主机上运行的问题