【发布时间】:2015-05-27 08:12:24
【问题描述】:
我正在循环中创建输入元素。 在单击时,这些按钮应该根据按钮元素的初始创建调用具有特定参数的特定函数。 事实上,所有按钮总是使用 LAST 按钮的参数调用函数。
for (var i = 0; i < planets.length; i++){
var id = planets[i].id;
var input = document.createElement("input");
input.type = "button";
input.className = "worldButton";
input.value = "Choose this world";
Input.onclick = function(){
game.pickWorld(planets, id);
}
}
每个按钮似乎总是传递planets[planets.length] 的id 而不是planets[i]。
console.log(id) 是正确的。
使用onclick、addEventListener或jquery.click都没有关系。
然而整个行星阵列传递成功。
如何让输入正确传递特定迭代的 id?
【问题讨论】:
标签: javascript loops