gpt4 book ai didi

javascript - 保持循环分配事件监听器的参数值

转载 作者:太空宇宙 更新时间:2023-11-04 16:06:50 24 4
gpt4 key购买 nike

我有一个 while 循环,它将事件监听器 (SelectRua()) 附加到 div

我需要 SelectRua() 方法中的 div 内部文本,并且由于 div 是调用事件监听器的内容,所以这有效很好:

$('#div' + i).on("click", function () { SelectRua(this) })

就像这样,当单击 div 属性时,我可以轻松访问它。

但现在我想分配一个对象(变量),当单击 div 时,该对象将不再可用:

正如我在 adding 'click' event listeners in loop 中看到的那样和 JavaScript closure inside loops – simple practical example经过多次尝试,我能够达到此代码:

while (morada[i]) {
$('#div' + i).on("click", function (morada) {
return function (morada) { SelectRua(morada[i]) }
}(morada))
}

当点击div时,会调用SelectRua()方法,但是参数是undefined,虽然我把它放在各处这个例子。

所以我的问题是,当将参数分配给事件监听器并在事件触发时使用时,如何设置参数的值?

最佳答案

click 事件替换为:

$('#div' + i).bind("click",morada[i],SelectRua)

关于javascript - 保持循环分配事件监听器的参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41797567/

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