【发布时间】:2014-12-23 20:29:04
【问题描述】:
我一直在尝试使用 jquery 来处理跨域请求,但是尽管请求成功,但浏览器抱怨无法解析结果。 我知道 JsonP 附加了一个回调参数,但是关于 SO 的所有问题都没有阐明回调是如何被实际调用的。 有人可以澄清 JsonP 的回调是如何执行的并帮助我解决这个问题。
<body>
<ul id="tweets">Test</ul>
</body>
Javascript
window.myCallback = function(data) {
console.log(data);
$("#tweets").append("<div>Hello</div>");
};
$(document).ready(function(){
$.ajax({
url: 'http://www.netflix.com',
type: 'GET',
dataType: 'jsonp',
jsonp: 'callback',
jsonpCallback: 'myCallback',
contentType: 'text/html',
success: function (data) {
alert(data);
}
});
});
我这里也有一个 JsFiddle http://jsfiddle.net/3yVC7/
所以在这个例子中,我只想在调用回调时修改“tweets”div,但它永远不会被调用。任何帮助将不胜感激。非常感谢。
【问题讨论】:
-
如果你想使用在 window 上定义的回调,你必须使用 getScript 来代替。
标签: ajax jquery cross-domain