Javascript 没有动态参数的jquery ajax回调函数

Javascript 没有动态参数的jquery ajax回调函数,javascript,jquery,callback,Javascript,Jquery,Callback,我有一个包含对象的数组,我想通过GET保存每个对象,并更新回调bot中的某些参数 html: <html><body><div id='test'><div id="a">a</div><div id="b">b</div></div></body></html> updatePostBack始终接收las项目! 如何将正确的id或对象传递给js/jquery中的回调函数?解

我有一个包含对象的数组,我想通过GET保存每个对象,并更新回调bot中的某些参数

html:

<html><body><div id='test'><div id="a">a</div><div id="b">b</div></div></body></html>
updatePostBack始终接收las项目!
如何将正确的id或对象传递给js/jquery中的回调函数?

解决方案非常简单:您需要在变量前面添加
var
,以将它们声明为新变量。在第一次迭代完成之前,下一次迭代不适当地覆盖了它们。此代码适用于我:

save = function(o,i){
    var itt = $(o)
    var tmp = {'desc':itt.html()};
    $.get('ajax/update_post', {'data':array2json(tmp)}, function(a){
        alert(itt.attr('id'))
        updatePostBack(a,itt)
    })
}

updatePostBack = function(a,item){
    alert(item.attr('id'))
}

$.map($("#test > div"), save);

我还将map语句移到了末尾,以便在声明后调用save函数。

好的,我测试了这个解决方案,确实如此。非常感谢你,你
save = function(o,i){
    var itt = $(o)
    var tmp = {'desc':itt.html()};
    $.get('ajax/update_post', {'data':array2json(tmp)}, function(a){
        alert(itt.attr('id'))
        updatePostBack(a,itt)
    })
}

updatePostBack = function(a,item){
    alert(item.attr('id'))
}

$.map($("#test > div"), save);