【发布时间】:2012-12-04 02:59:05
【问题描述】:
我有一个如下所示的 javascript 函数:
function reloadToolbar() {
var ids = ["#gs_foo"];
var parmName = ["foo"];
for (i = 0; i < ids.length; i++) {
$.ajax({url:"myurl?parm="+parmName[i],success:function(result){
$(ids[i]).html(result);
}});
}
}
但是,上面的代码不起作用。它不会更新 ID gs_foo。虽然,下面的代码运行良好,但请注意更改 ($("#gs_foo).html(result))
function reloadToolbar() {
var ids = ["#gs_foo"];
var parmName = ["foo"];
for (i = 0; i < ids.length; i++) {
$.ajax({url:"myurl?parm="+parmName[i],success:function(result){
$("#gs_foo").html(result);
}});
}
}
我怎样才能以正确的方式做到这一点?
【问题讨论】:
-
似乎这个问题每天至少被问一次。重复:stackoverflow.com/questions/3273210/…、stackoverflow.com/questions/1451009/…、stackoverflow.com/questions/3572480/…,还有更多……这是关于闭包的。另外顺便说一句,您的
i变量是全局变量。 -
好,我以为我疯了。我查看了@elclanrs 发布的三个链接,但无法连接点...
-
现在我仔细检查可能不是那个......尽管看起来
i在成功函数闭包中“丢失”了......
标签: javascript jquery ajax