谷歌可视化查询&表格-没有返回正确的行简单的电子表格
Google Visualization Query & Sheets -- not returning proper rows for simple spreadsheet
我一定是误解了他们的文档,但这看起来是如此简单和直接…
这里有一个非常简单的Sheets文档:https://docs.google.com/spreadsheets/d/1I8PQWcldqZmCpctFPyXm5UpPgjeRYpX8dtkVxYgcy08/edit?usp=sharing
看文件。有多少行?看起来有5行行,对吧?
让我们使用可视化API编写一些JavaScript代码…
function displayData(response) {
var data = response.getDataTable();
console.log(data.getNumberOfRows());
}
var opts = {sendMethod: 'auto'};
var query = new google.visualization.Query('https://docs.google.com/spreadsheets/d/1I8PQWcldqZmCpctFPyXm5UpPgjeRYpX8dtkVxYgcy08/edit?usp=sharing', opts);
query.setQuery('select *');
query.send(displayData);
超级简单!从电子表格中获取所有数据,并打印行数。
但是观察到的结果是1行。为什么1 ?这没有意义。
当你深入研究DataTable时,你会发现它正在连接应该分开的单元格,例如data.Ff[0].label === "foo one uno"
.
为什么?这是一个bug,还是我误解了这个API?
值得注意的是,QUERY不返回混合数据类型的列:
在单列中混合数据类型的情况下,大多数数据类型确定用于查询目的的列的数据类型。少数民族数据类型被认为是空值。
这是一个通过编辑数据源的URL来解决的方法:
google.load('visualization', '1', {
callback: function () {
var query = new google.visualization.Query('https://docs.google.com/spreadsheets/d/1I8PQWcldqZmCpctFPyXm5UpPgjeRYpX8dtkVxYgcy08/gviz/tq?tqx=out:html&tq?gid=0&headers=0&range=A1:C');
query.send(displayData);
}
});
function displayData(response) {
numRows = response.getDataTable().getNumberOfRows();
document.getElementById('data').innerHTML = numRows;
}
http://jsfiddle.net/gregpearl/zs98r3v8/相关文章:
- Google电子表格getValue([cell containing ])不返回制表符
- 区分电子表格中的空单元格和0值
- 使用外部数据创建仪表板(谷歌电子表格)-JavaScript
- 如何使用Google Sheets API+Javascript阅读电子表格
- 谷歌电子表格的自定义xml解析功能
- SIMPLE Javascript代码,用于显示谷歌电子表格中单个字段的数据
- 在谷歌电子表格中循环单元格
- 如果填写了特定值,则通过电子邮件发送电子表格中的数据
- 使用AngularJS制作一个类似电子表格的应用程序
- 有没有一种方法可以使用Javascript检索谷歌表单ITSELF(而不是电子表格)的数据
- 使用谷歌应用程序脚本制作基于谷歌电子表格的带有列表框的网络应用程序
- 使用公共API访问(无OAuth)从JavaScript编写Google电子表格
- 如何通过悬停或点击谷歌电子表格中的单元格来运行自定义功能
- 如何使用谷歌脚本将html表单数据保存到谷歌电子表格中
- 在最初的查询/表格绘制中只提取谷歌电子表格的一列
- 谷歌电子表格脚本:如何保存“;永远”;
- 每个循环的简单谷歌电子表格
- 简单的Json格式时,请求谷歌电子表格
- 谷歌可视化查询&表格-没有返回正确的行简单的电子表格
- 用HTML显示可编辑列表(如电子表格)的最简单方法是什么