[英]Queue jQuery AJAX Calls
嘿,我正在尝试抓取总页数,然后从每个页面抓取item_id。 我的代码工作,但不是每个ajax请求在最后一个之后触发,它们都会立即运行。 如何对调用进行排队,以便每次调用get_page_items然后调用get_item为1。
function scraperFunction()
{
$.get('./scraper/get_total_pages', { type: 'movie' }, function(data)
{
total_pages = data;
total_items = total_pages * 6;
for(page=1;page<=total_pages;page++)
{
$.get('./scraper/get_page_items', { type: 'movie', page: page }, function(json)
{
$.each(json, function(key, item_id)
{
$.get('./scraper/get_item', { item_id: 'item_id' });
});
}, 'json');
}
});
}
您可以使用Ajax Queue插件,或使用jQuery的内置队列支持 。
您可以在$.ajax
请求中使用async: false
选项
$.ajax({
url: './scraper/get_page_items',
data: { type: 'movie', page: page },
async: false,
dataType: 'json',
success. function(json){
....
}
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.