繁体   English   中英

队列jQuery AJAX调用

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM