我有一个包含数据的谷歌电子表格。(我简化了所有示例,使其更易于阅读):
+-------+--------+-------+
| Name | Email | other |
+-------+--------+-------+
| Name1 | Email1 | info1 |
| Name2 | Email2 | info2 |
+-------+--------+-------+我使用google.visualization.Query将电子表格中的数据加载到html网页中。
我从查询中创建了一个google.visualization.DataTable,然后从DataTable中创建了一个可视化表。
现在我想在用户单击一行时编辑电子表格,我的旧代码很简单,只是触发了一个新事件
var DataTable= response.getDataTable(); //response is the response after sending the google.visualization.Query
var Table = new google.visualization.Table (...);
google.visualization.events.addListener(visualization_table, 'select', selectedRow);
function selectedRow(){
alert(Table.getSelection()[0]);
}当查询包括整个spreadhseet时(select *),但当您过滤某些行时,例如(select *C contains 'John'),代码就可以工作了。
显然,html代码中的表没有与电子表格相同的行索引,因此我不能使用Table.getSelection()。
有没有办法让“真正的”行索引来正确地编辑它?
发布于 2016-03-03 13:07:31
我从未将工作表作为这样的数据源进行查询,但我注意到DataTable上的两个方法可能会有所帮助:
DataTable.getColumnId(columnIndex);
DataTable.getRowId(rowIndex)返回由基础表中的列索引指定的给定列的标识符。对于通过查询检索到的数据表,列标识符由数据源设置,在使用查询语言时可用于引用列。
https://stackoverflow.com/questions/35602634
复制相似问题