我正在尝试使用jquery / ajax将特定单元格中的数据导入到我的网页中。
代码:
$.ajax({
url: "https://docs.google.com/spreadsheet/pub?key=0AsVuHqMG8OuHdDEtdWxUMUxjTUR4R3BPNFk0S25TcFE&range=d4&output=csv",
success:function(result) {
alert(result);
}
});
这在Firefox,Chrome和Safari中运行良好,但在IE9及以下版本中没有任何发生,我不知道为什么。控制台也没有抛出任何错误。任何帮助表示赞赏。
答案 0 :(得分:0)
我很确定你不能对你正在使用的URL使用标准的AJAX请求。该URL将重定向您几次,直到您获得可下载的文件,而不是可以从中检索数据的文件。
我建议查看"Simple example of retrieving JSON feeds from Spreadsheets Data API"文档,因为这样可以让您能够从GSS检索数据作为JSON。
基本上......
您首先在网站上添加javascript文件,如下所示......
<script src="http://spreadsheets.google.com/feeds/list/*ID*/*WS*/public/values?alt=json-in-script&callback=*FN*"></script>
• * ID * 是电子表格的长ID。
• * WS * 是工作表编号,例如1,2,3等。
• * FN * 是您要拨打的功能。
然后使用回调函数,您可以随意使用它,例如。
function callBackFunc(json){
// Loop through all returned data
for(i = 0; i < json.feed.entry.length; i++;){
// Each row of data
entry = json.feed.entry[i];
// Each cell is called gsx$ CELL HEADING .$t;
cell1 = entry.gsx$firstCellHeading.$t;
cell2 = entry.gsx$blahblahblah.$t;
}
}
我使用此方法将大量信息填充到我们公司的网站,因为我们没有CMS,并且它允许任何成员工作人员使用他们已被授予编辑权限的GSS更新网站上的信息。
修改强>
我也忘了提到上述方法也解决了IE 9及以下版本存在问题的任何跨域问题,因此无需担心CORS并且必须转换为XDR for IE。
好的一面XHR在IE 10中得到支持:)不能等待那个标准和IE9淡出。