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

我的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只是在你的站点上创建一个标签并加载数据。 根本没有XHR对象。

我认为没有办法尽早中止这种要求,但我希望如果我错了,有人会在这里纠正我。

我认为文档可能会对此有点误导。 使用JSONP时没有发出AJAX请求。 在这种情况下, ajax函数返回undefined值而不是XMLHTTPRequest的对象。