使用 jQuery 中止未完成的 Ajax 请求
是否可以在收到响应之前取消 Ajax 请求?是的,jQuery 为此目的提供了一个简单的方法。
在大多数情况下,jQuery 的 Ajax 方法返回一个 XMLHttpRequest(或等效)对象,该对象提供“abort()”方法。这允许您提前终止请求。
如代码片段所示:
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。 jQuery 1.5 及更高版本: 返回的对象现在是名为 jqXHR 的本机 XMLHttpRequest 对象的包装器,它仍然公开“abort()”方法。
2. jQuery 3 及以上版本: ajax 方法返回带有附加方法的 Promise,包括“abort()”,因此上面显示的代码仍然适用。
注意: 尽管最初假设,“xhr.abort()”继续在 jQuery 3.x 中运行。有关更多详细信息,请参阅 jQuery Github 存储库。
以上是jQuery 可以中止正在进行的 Ajax 请求吗?的详细内容。更多信息请关注PHP中文网其他相关文章!