我可能错过了一些明显的东西,但我似乎无法让我的AJAX帖子连续运行而不是与jQuery同时运行.
ad_numbers 是一个数字ID数组.
$(ad_numbers).each(function() {
ad_number = $.trim(this);
if(!ad_number) { return true; }
$.post('/fetch.php', { ad_number: ad_number }, function(data, textStatus) {
$('#log').prepend('<p>' + data + '</p>');
});
});
Run Code Online (Sandbox Code Playgroud)
在fetch.php,我已经拥有它,sleep(2)所以我可以确保它正常工作.它似乎是在同时运行所有这些广告号,而不是等待第一个POST在继续执行数组中的下一个广告号之前完成.
我猜$.post()它在完成之前就回来了?避免这种情况的最佳方法是什么?
尝试添加async: false您的选项.
$(ad_numbers).each(function() {
ad_number = $.trim(this);
if(!ad_number) { return true; }
$.ajax({
type: 'POST',
url: '/fetch.php',
data: {ad_number: ad_number},
async: false,
success: function(data, textStatus) {
$('#log').prepend('<p>' + data + '</p>');
}
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1241 次 |
| 最近记录: |