gpt4 book ai didi

javascript - 在循环中多次使用 .trigger

转载 作者:行者123 更新时间:2023-12-01 03:22:44 24 4
gpt4 key购买 nike

我希望循环浏览选择框中的项目,查看其中是否有任何项目已在 API 中保存数量,并将所述项目附加到页面。

我的代码使用 .trigger('change') 来完成此操作,但随后它退出 for 循环。

如果没有 .trigger('change'),for 循环本身将完成,但是如果没有 .trigger('change'),则不会附加任何项目。

$(window).on('load', function(e) {
if (Basket) {
var lineItemArray = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 4];
for (i=0; i < lineItemArray.length; i++) {
if (Basket.LineItems[lineItemArray[i]].Quantity > 0) {
// Append item to page (function elsewhere takes care of this)
$('#select-other-items-section').find('option[value="' + lineItemArray[i] + '"]').attr("selected",true).trigger('change');
}
}
}
});

有哪位好心人能指点一下哪里出了问题吗?或者也许甚至不可能在循环中使用 .trigger?

最佳答案

在这一行中:

for (i=0; i < lineItemArray.length; i++)

i 变量变为全局。如果全局 i 在循环内的其他任何地方设置(在本例中是在更改事件处理程序中),那么它也会更改此处使用的 i

通过将 i 更改为当前范围来修复:

for (var i=0; i < lineItemArray.length; i++)

关于javascript - 在循环中多次使用 .trigger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45061717/

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