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

标签 javascript jquery callback

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

html:

<html><body><div id='test'><div id="a">a</div><div id="b">b</div></div></body></html>

js:

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

save = function(o,i){
 itt = $(o)
 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'))
}

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 语句移到末尾,以便它在声明后 调用保存函数。

关于javascript - 没有动态参数的jquery ajax回调函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1182947/

相关文章:

javascript - 删除符合某些条件的键

javascript - 如何将 php 中的 json 数据解析为 jQuery

javascript - 如何使用jquery将yyyy-mm-dd格式的日期转换为 'long date'格式?

javascript - 如何将像素添加到元素的当前位置?

ruby-on-rails - mongoid嵌入式文档回调

javascript - react 如何检测状态/ Prop 的变化?

javascript - 如何停止为值复制键

javascript - 点击时底部 div 跳转

c# - 如何实现从非托管 DLL 到 .net 应用程序的回调接口(interface)?

objective-c - 带回调的 CAAnimation