这可能是一件很容易解决的事情,但我不能让它工作。我在试着从歌曲踢api里拿到艺人日历。每次我运行时,代码都会告诉我使用event.preventDefault()。并且我没有“Access-Control-Allow-Origin”报头出现在所请求的资源上。因此不允许访问源'null‘。我真的不知道这是什么意思。有谁可以帮我?
谢谢
$(document).ready(function () {
$("#search").on("click", function () {
$("div").html("");
var artist = $("#name").val();
if (artist) {
$.get("http://api.songkick.com/api/3.0/events.json?artist_name=" + artist +"&apikey=myKey", function (data) {
var concertResults = data.resultsPage.results.event;
for (var i = concertResults.length - 1; i >= 0; i--) {
if (concertResults[i].uri) {
$("#container").append("<div>" + concertResults[i].uri + "</div>");
}
}
});
} else {
alert("You can't even get your favorite artist name right?")
}
});
});发布于 2013-10-28 23:32:02
为了在Javascript中使用Songkick API,您需要使用JSON-P (http://json-p.org/)。
它看起来像这样:
$.getJSON("URL_TO_API&jsoncallback=?",
function(data){
// data is JSON response object
});在您的示例中,它将是:
$.get("http://api.songkick.com/api/3.0/events.json?artist_name=" + artist +"&apikey=myKey&jsoncallback=?",
function(data){
var concertResults = data.resultsPage.results.event;
for (var i = concertResults.length - 1; i >= 0; i--) {
... // same as it is now
});希望这能有所帮助!
https://stackoverflow.com/questions/19415951
复制相似问题