首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >jQuery $.Ajax需要很长时间才能做出回应

jQuery $.Ajax需要很长时间才能做出回应
EN

Stack Overflow用户
提问于 2012-05-31 10:38:17
回答 1查看 421关注 0票数 0

我有一个简单的函数来处理行数据的提交(每个循环一个提交)。我不会详细介绍这个函数的主要用途,但这里有一个简短的总结:我有很多循环遍历的数据,在每个循环中我调用具有ajax函数的upload()函数。Ajax将数据作为post提交,然后在成功时调用继续循环的insert()函数,并再次调用upload(),直到处理完所有数据。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
upload: function( data ){
    var obj = this;
    if( data.post_code && data.post_code.length > 0 ){
        if( ajax_insert ){
            ajax_insert.abort();
        }

        try{
            ajax_insert = $.ajax({
                type    : 'POST',
                url     : '/submission/my-function?ajax',
                data    : $.param( data ),
                success : function( response ) {
                    obj.insert();
                },
                error: function(msg){
                    setInterval(function(){
                        obj.insert();
                    }, 2000);
                }
            });
        }catch(err){
            ajax_insert.abort();
            obj.insert();
        }
    }else{
        this.insert();
    }
}

一些客户端遇到的问题是在一段时间后停止提交(一些在60后提交,一些在100+之后提交)。我不确定这是不是因为互联网连接速度慢,但我在firebug上使用控制台时注意到的是,当提交停止在控制台中时,它仍然显示Ajax正在尝试su提交,但从未完成。并且没有显示javascript错误。

如果Ajax花了很长时间来完成提交(假设它被卡住了近5分钟)并使用.abort()重试,有什么方法可以解决吗?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-31 10:42:03

你可以使用..

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  timeout: 10000, //time in milliseconds. 

这至少可以捕捉到一个停滞的脚本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10831956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文