javascript - 将事件监听器添加到索引元素

标签 javascript html

我有一个元素列表。然而,该列表的长度因试验而异。例如,有时有 6 个元素,有时有 8 个。确切的数量在外部元数据中详细说明。

为了显示这个变量列表,我写了:

var html = '';
html += '<div id="button' + ind + '" class="buttons">';
html += '<p>' + name + '</p></div>';
display_element.innerHTML = html;

如果我要“检查”浏览器中的元素,它们的 ID 可能为 button0.buttonsbutton1.buttons

现在我尝试将事件监听器附加到每个元素,但我的代码到目前为止还无法正常工作。下面是不同形式的损坏代码:

document.getElementById("button' + ind + '").addEventListener("click", foo);
$("#button' + ind + '").click(foo);

document.getElementById("button").addEventListener("click", foo);
$("#button").click(foo);

任何帮助将不胜感激!谢谢。

最佳答案

你错误地concat字符串将其更新为

document.getElementById("button" + ind).addEventListener("click", foo);

var html = '';
var ind = 1;
var display_element = document.getElementById("test");
html += '<div id="button' + ind + '" class="buttons">';
html += '<p>' + name + '</p></div>';
display_element.innerHTML = html;


document.getElementById("button" + ind).addEventListener("click", foo);

function foo(){
alert('click');
}
<div id="test"></div>

关于javascript - 将事件监听器添加到索引元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61651136/

相关文章:

javascript - Font-Awesome 图标,带有 onclick 事件集

用户在模态上输入后执行 Javascript 回调

Javascript 堆内存不足

javascript - 如何以绝对位置让 child 居中

html - 使用 html/css 在表格的 td 上拉伸(stretch)背景图像

javascript - 如何使用 jquery 将复选框的值追加和删除到 ul li

javascript - 在 Bootstrap 模态中暂停 Vzaar 视频

javascript - 排序后的 JavaScript 数组如何从比较器返回不正确的值?

javascript - 如何动态实现 ionRangeSliders

javascript - 复选框改变状态