这个问题困扰了我一段时间。我正在尝试使用 getJSON 从我的谷歌日历提要中获取事件标题,并最终使用 JSONparse 回调对其进行解析。不幸的是我不能让它工作。我到处都遇到了一堆解决方案,但实际上不是我想要的。如果我使用 google js api,我可以让它工作,但我尝试使用纯 jquery。
这是我的
var eventName = '';
var gclaData = 'https://www.google.com/calendar/feeds/********%40gmail.com/public/full?orderby=starttime&sortorder=ascending&max-results=3&futureevents=true&alt=json';
$.getJSON(gclaData,function(data){
for(var i=0; i<=data.length; i++){
eventName += JSON.parse(data[i].entry.title.$t)+"<br>";
}
$('#outputTitle').append(eventName);
});
});
</script>
<div id="outputTitle"></div>
这是我的 fiddle
最佳答案
我不明白你在做什么,首先 for 是错误的,因为它没有任何长度的数据对象,提要字段是一个数组,所以你应该这样做:
data.feed.entry[i].title.$t
其次,$t 值是一个字符串,因此您不能将它传递给 JSON.Parse,或者您可以传递它但它毫无值(value)。
也许您正在寻找的最终代码:
var eventName = '';
var gclaData = 'https://www.google.com/calendar/feeds/somugus%40gmail.com/public/full?orderby=starttime&sortorder=ascending&max-results=3&futureevents=true&alt=json';
$.getJSON(gclaData,function(data){
for(var i = 0; i < data.feed.entry.length; i++){
eventName += data.feed.entry[i].title.$t+"</br>";
}
$('#outputTitle').append(eventName);
});
关于javascript - 使用 json 解析谷歌日历数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17504708/