我请求的JSON是数组中的数组(我认为),看起来像这样:
"results": {
"collection1": [
{
"Inches": "1\"",
"Resort": "Keystone",
"index": 1,
"url": "http://extras.denverpost.com/skireport/colorado/recentsnow.html"
},
{
"Inches": "0\"",
"Resort": "Breckenridge",
"index": 2,
"url": "http://extras.denverpost.com/skireport/colorado/recentsnow.html"
},
{
"Inches": "0\"",
"Resort": "Telluride",
"index": 3,
"url": "http://extras.denverpost.com/skireport/colorado/recentsnow.html"
},
我正在尝试在列表中显示此信息,但我得到了一个未定义的'结果列表包含以下JQuery:
$.ajax({
url:"www.kimonolabs.com/api/5qtdkod0apikey=z6vewKq5SXBcF6Q6L17sQEJ8gaYMou0C",
crossDomain: true,
dataType: "jsonp",
'success': function (response) {
$(".panel-heading").html(response.name);
//Puts the API name into the panel heading
var collection = response.results.collection1;
for (var i = 0; i < collection.length; i++){
$(".list-group").append('<li class="list-group-item">' +
collection[i].resort.inches + '</li>');
//when I just try to bring in either resort or inches I get an 'undefined' list-- when I try to add both (e.g resort.inches) I don't get any results
}
}
});
定义度假村和英寸数据并将其显示在&#34; list-group-item&#34;中的最佳方法是什么?名单。这是一个小提琴:http://jsfiddle.net/6w0sdctg/
答案 0 :(得分:0)
1)当你制作一个jsfiddle时,你需要通过点击javascript框右上角的齿轮图标来添加jQuery。
2)您正在获取未定义的内容,因为您请求的URL未返回jsonp响应。把它放在浏览器中看看。我从该网站上的文档收集的原因是,它需要一个API密钥,而您并没有发送API密钥。
详细了解here。
编辑,在阅读了Barmar的评论之后,看起来您似乎正在尝试发送API密钥,但由于您没有发送它并且之前没有丢失&符号,因此它没有被发送。应为/?...&apikey=...