是否可以同时执行$ .post请求?我有以下代码:
function loadTest() {
var questionIDs = [];
var count = 0;
console.log("getting test");
$.post("db.php", function(data) {
obj = jQuery.parseJSON(data);
var questionCount = obj.length;
console.log(obj);
while (count != questionCount) {
questionIDs.push(obj[count].id);
count++;
}
console.log(questionIDs);
// $('#question').html(obj[0].question);
});
$.post("getChoices.php", {
IDs: questionIDs
}, function(data) {
console.log(data);
obj = jQuery.parseJSON(data);
console.log(obj);
while (q < 3) {
console.log("question");
var w = 1;
while (w < 5) {
console.log(obj[q][w]);
w++;
}
q++;
}
// $('#question').html(obj[0].question);
});
}
由于asycnchronously运行$。员额功能,在发送时可变questionIDs将是空的。有没有可能的解决方案,不需要从$ .post更改为ajax?我在这里尝试了各种解决方案,但我似乎无法让他们工作。
+0
在函数中调用第二个调用,并在您有权访问'questionIDs'后,从第一个闭包内调用它。你也可以在'.done'部分放置第二个函数。 –
+0
你可以这样做。 'var res =''; (函数(响应1){函数(响应){res =响应;})。然后($。post()。done(函数(响应1){alert(res +“”+ response1}));' –