使用jQuery中止Ajax请求

使用jQuery,如何 尚未收到响应 ?

回答:

大多数jQuery Ajax方法都返回XMLHttpRequest(或等效的)对象,因此您可以使用abort()

请参阅文档:

  • abort Method (MSDN).取消当前的HTTP请求。
  • abort()(MDN)。如果请求已经发送,则此方法将中止请求。

    var xhr = $.ajax({

    type: “POST”,

    url: “some.php”,

    data: “name=John&location=Boston”,

    success: function(msg){

    alert( “Data Saved: ” + msg );

    }

    });

    //kill the request

    xhr.abort()

从jQuery

1.5开始,返回的对象是名为jqXHR的本机XMLHttpRequest对象的包装。该对象似乎公开了所有本机属性和方法,因此上面的示例仍然有效。请参阅

jqXHR对象 (jQuery API文档)。

从jQuery

3开始,ajax方法现在返回带有其他方法的promise(例如abort),因此上面的代码仍然有效,尽管返回的对象不再可用xhr

xhr.abort()仍然适用于jQuery3.x。不要以为 更新2 是正确的。

以上是 使用jQuery中止Ajax请求 的全部内容, 来源链接: utcz.com/qa/419456.html

回到顶部