jquery - 我无法使用 jQuery 和 abort() 函数停止 ajax 请求

标签 jquery ajax jsonp abort

我的 jQuery 如下:

var x = $.ajax({
    dataType: "jsonp",
    url: "https://ajax.googleapis.com/ajax/services/search/images?q=google&v=1.0",
    success: function(msg){
       alert( "Jsonp data: " + msg );
    }
});

alert(x);  // x is undefined
// x.abort()​​

您可以在这里尝试此代码:http://jsbin.com/iyile3/2/edit

我想停止这个ajax请求并停止这个ajax请求的成功函数。

但是我得到的是“x”未定义,我想我不会停止这个ajax请求及其成功函数。

那么有人可以帮助我吗?

非常感谢!

最佳答案

嗯,这是有道理的。

一个jsonp来电不是普通的XMLHttpRequest (.ajax() 通常返回)。它不会那样工作,因为你无法打破 same origin policy

JSON-Padding 适用于动态脚本标签插入。所以基本上,jQuery 只是创建一个 <script>在您的网站上标记并加载数据。否XHR根本没有对象。

我认为没有办法提前中止此类请求,但如果我错了,我希望有人能在这里纠正我。

关于jquery - 我无法使用 jQuery 和 abort() 函数停止 ajax 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4162261/

相关文章:

javascript - 如何使用 JQuery 将 H1 元素与另一个文档中的 H1 交换

javascript - 如何设置 HTML 选择选项悬停和选定选项效果的样式

javascript - AJAX 没有设置 PHP $_POST 变量,所以它返回 'Undefined'

javascript - 从一个网络应用程序到另一个网站提供复杂内容(考虑整个网页树)的最佳可重用解决方案是什么?

asp.net-mvc - ASP.NET MVC 输出缓存 JSONP

javascript - AngularJS 中 $http 的 HTTP JSONP 请求问题

jquery - 我可以在 Jquery 中组合变量和选择器吗?

jquery - 如何使用 jQuery 添加(克隆)表单字段并增加 ID 和名称

javascript - 如何在单击时仅突出显示一个表 td

javascript - 来自 $.ajax 和 json 的数据对象是浅层的