一尘不染

设置ajax的超时时间(jQuery)

javascript

$.ajax({
        url: "test.html",
        error: function(){
            //do something
        },
        success: function(){
            //do something
        }
    });

有时success功能运作良好,有时却无法。

如何为此ajax请求设置超时?例如,如果时间为3秒,则显示错误。

问题是,ajax请求将冻结该块直到完成。如果服务器关闭了一段时间,它将永远不会结束。


阅读 640

收藏
2020-04-25

共1个答案

一尘不染

请阅读$.ajax 文档,这是一个涵盖的主题。

$.ajax({
    url: "test.html",
    error: function(){
        // will fire when timeout is reached
    },
    success: function(){
        //do something
    },
    timeout: 3000 // sets timeout to 3 seconds
});

您可以通过访问error: function(jqXHR,textStatus,errorThrown)选项的textStatus参数来查看抛出了哪种类型的错误。选项为“超时”,“错误”,“中止”和“ parsererror”。

2020-04-25