gpt4 book ai didi

javascript - jQuery 点击函数传递参数

转载 作者:行者123 更新时间:2023-11-30 09:03:46 25 4
gpt4 key购买 nike

我想为数组中的所有元素分配 jQuery click-function。但另外,我需要从点击功能中访问数组。来源将有希望使它更清楚:

for (var i=0; i<mybox.myarray.length; i++) {
mybox.myarray[i].jqelem.click(function(event, mybox) {
event.preventDefault();
doStuffWithParameter(mybox);
});
}

// mybox is a JavaScript object (not jQuery-element!), myarray is an array, jqelem is a jQueryelement ala $("div.myclass");

问题似乎出在 function(event, mybox) 上,显然这不起作用,即 myboxunknown 中功能。我想我“有点”理解为什么它不能以这种方式工作,但是如何实现呢?

PS:我这样做基本上只是为了避免为所有数组元素手动输入它。

最佳答案

只需删除名为 mybox 的(无用的)第二个回调函数参数。

如果 mybox 在外部 block 的范围内,它也会在内部回调函数的范围内!

如果您需要知道回调中 i 的适当值,那么您可以执行 event registration-time binding :

for (var i=0; i<mybox.myarray.length; i++) {
mybox.myarray[i].jqelem.click({i: i}, function(event) {
// use "event.data.i" to access i's value
var my_i = event.data.i;
});
}

map {i : i} 对应于 jQuery .click() 文档中的 eventData 参数。

关于javascript - jQuery 点击函数传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6903005/

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