【发布时间】:2013-02-24 01:09:03
【问题描述】:
我在 jQuery 中有一个哈希。它被称为字典。
为了填充该哈希,我调用 createDict() 函数,该函数将返回如下所示的内容,
{"12|345" => "http://www.one.com", "67|890" => "http://www.two.com"}
var dict = createDict();
现在对于散列的每个元素,我执行“grabData”方法,它只是一个发布请求,
$.each(dict, function( key, value ) {
data = key.split("|")[0];
var a = "";
//Calling the function that is a post request.
grabData(data,"/url",function(returned) {
alert(returned); //=> Positive
a = returned;
});
alert(returned); // => negative
alert(a); // => negative
});
//定义grabData
function grabData(input,url,callback){
$.post(url,input,function(data){
$("div#answer").html(data);
callback(data);
});
}
问题:
对于 dict 哈希中的每个元素,我正在执行一个组帖子 请求并获取返回值并更新 “div#answer”。
-
我想在另一个数组或散列中收集返回值,并且 运行另一个单一的 post 请求,其输入将是这个数组或 哈希。
注意:
第二个单post请求会更新数据库,所以我 不希望在第一组发布请求期间发生这种情况。
【问题讨论】:
-
您的问题实际上并不是问题。到目前为止,您尝试了什么,遇到了什么问题?
-
感谢您的及时回复。您会看到在grabData 函数之外无法访问变量“returned”。但我想收集所有返回的变量并在 $.each 之外再发一篇文章。我该怎么做?
-
请看下面的答案,希望对您有所帮助
-
我会尝试您的解决方案并让您知道。请稍候!
标签: jquery database post asynchronous each