$(document).ready(function(){
/* Union Station */
$.getJSON("http://myttc.ca/Union_station.json?callback=?",
function(data){
if (routes.length > 0) {
$.each(data.stops, function(i,item){
$("#Union").append("<p>Stop Name: " + item.name + "</p>");
$.each(item.routes, function(i,item){
$.each(item.stop_times, function(i,item){
$("#Union").append("<p>Departure Times: " + item.departure_time + "</p>");
$("#Union").append("<p>Shape: " + item.shape + "</p>");
});
});
});
}
});
});
我在这里得到一个空屏幕 任何人都可以帮助修复此jquery从json获取数据 我只想用出发时间显示停止详情
答案 0 :(得分:2)
应该是:
function(data){
if (data.stops.length > 0) {
这是ajax的结果:
Object {time: 1367157909, stops: Array[8], name: "Union Station", uri: "union_station"}
编辑:
我想你需要一些额外的逻辑,这里是对象:
stops: Array[8]
0: Object
1: Object
2: Object
3: Object
4: Object
5: Object
6: Object
7: Object
agency: "Toronto Transit Commission"
name: "Union Station Subway Platform"
routes: Array[1]
0: Object
name: "Yonge-University-Spadina Subway"
route_group_id: "1"
stop_times: Array[6]
0: Object
departure_time: "10:07a"
departure_timestamp: 1367158079
所以你可以这样做:
for (var i = 0, l = data.stop.length, stop; i < l; i++) {
stop = data.stop[i];
// If current stop has stop_times then...
if (stop.stop_times.length) {
// do something...
console.log(stop.stop_times);
}
}
答案 1 :(得分:1)
routes
可能不是你想要的:
function(data){
if (routes.length > 0) {
至少我看不出routes
的设置位置。你可能需要
function(data){
if (data.length > 0) {
答案 2 :(得分:1)
成功回调中没有routes
来删除该条件
$(document).ready(function(){
/* Union Station */
$.getJSON("http://myttc.ca/Union_station.json?callback=?",
function(data){
$.each(data.stops, function(i,item){
$("#Union").append("<p>Stop Name: " + item.name + "</p>");
$.each(item.routes, function(i,item){
$.each(item.stop_times, function(i,item){
$("#Union").append("<p>Departure Times: " + item.departure_time + "</p>");
$("#Union").append("<p>Shape: " + item.shape + "</p>");
});
});
});
});
});
演示:Fiddle
答案 3 :(得分:0)
请参阅此问题的接受方式。这更具体到Jquery。 jsonp with jquery
API文档将为您提供更多信息。 http://api.jquery.com/jQuery.getJSON/