这是我的代码:
$("document").ready(function () {
var jqxhr = $.ajax({
url: "http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?",
success: function () {
$("#foo").text("second success");
},
error: function (xhr, status, error) {
$("#foo").text(JSON.stringify(xhr));
},
complete: function () {
}
});
});
这是标记:
<body>
<div id="foo"></div>
</body>
返回的数据(序列化并放入#foo
)是:
{
"readyState":0,
"responseText":"",
"status":0,
"statusText":"error"
}
我不知道我做错了什么。请帮忙。
这是一个小提琴: http://jsfiddle.net/U2gm9/4/
答案 0 :(得分:3)
尝试设置dataType: 'jsonp'
$("document").ready(function () {
var jqxhr = $.ajax({
url: "http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?",
dataType:'jsonp',
success: function () {
$("#foo").text("second success");
},
error: function () {
$("#foo").text("error");
},
complete: function () {
}
})
});
演示:Fiddle
$("document").ready(function () {
$.getJSON('http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?').done(function (data) {
$("#foo").text("second success");
console.log(data)
}).fail(function () {
$("#foo").text("error");
}).always(function () {})
});
演示:Fiddle