gpt4 book ai didi

javascript - onclick 事件未触发或未通过循环中的按钮订阅

转载 作者:行者123 更新时间:2023-11-28 19:43:57 25 4
gpt4 key购买 nike

我正在尝试获取订阅的按钮单击事件数组,然后通过从属性中提取位置来重定向。我在让它工作时遇到了困难,现在它归结为以下内容......

function pushButton() {
window.alert('Hello World');
}

var listButtons = document.getElementsByClassName('btn');

for (var i = 0; i < listButtons.length; i++) {
listButtons[i].addEventListener('click', pushButton, false);
}

这位于页面底部的脚本标记中(在声明按钮之后)。

我也尝试过...

...
for (var i = 0; i < listButtons.length; i++)
listButtons[i].onclick = function(i) {
return function() {
alert('Hello World');
}
}(i);
}

还有...

...
(function(i) {
listButtons[i].onclick = (function() {
window.alert('Hello World');
})})(i);

基于我见过的其他例子。问题是单击按钮时没有任何反应。我在 Chrome 中使用开发人员 View 来查找错误,但没有显示任何错误。我也在 Firefox 和 IE 中尝试过,但没有成功。

我确实有几个使用 onclick 触发所有事件的示例,我知道这是由于订阅时触发的事件造成的。但即使在那之后,按钮也没有执行任何操作。我之前使用的是 onclick,但现在我已移至 addEventListener,它没有不同的结果。

我试图避免使用 jQuery,而只使用普通的 Javascript。

最佳答案

我尝试复制您的第一个代码示例并让它像这样工作:

function pushButton() {
alert('Hello World');
}

listButtons = document.getElementsByClassName('btn')

for (var i = 0; i < listButtons.length; i++) {
listButtons[i].addEventListener('click', pushButton);
}

关于javascript - onclick 事件未触发或未通过循环中的按钮订阅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24623232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com