2013-10-24 39 views
0

所以我有一个表显示行的索引号。我已经将表格的宽度最大化为与页面完全相同。不幸的是,索引编号的列现在很烦人,所以我想知道是否有办法设置第一列的宽度或使表格中的所有列可调整?谢谢!您可以调整谷歌图表表格的列宽吗?

回答

1

在Google Visualization API Tables中设置列宽真的很烦人。 HTML表格基于表格中的第一行数据设置列宽,这对于Google Visualization API来说是标题行(普通表格构造会将标题行放在<thead><th>标签中,但是Google将它放在<tbody><td>之间标签,这就是它定义列宽的原因)。 API不提供任何方法将css或类分配给标题行中的单个单元格,因此您必须编写JavaScript来解析您的表并设置适当的类/ CSS来处理列宽。此外,由于表格会从HTML中删除,并在用户单击列标题对表格进行排序或单击页面按钮(如果已启用分页)时重新绘制表格,则每当表格为时,您必须重新分配类/ CSS到单元格重绘。更复杂的是,如果您将一个高度分配给表,以便在表格过大时滚动,那么API实际会绘制两个表以创建固定标题效果。

通常我是使用Google Visualization API的倡导者,但在表格可视化的情况下,它有时比它的价值更麻烦。您可能更容易与其他库一起工作,或创建自己的自定义表格可视化。

如果你想继续使用可视化表,这里的一些代码,让你开始:

google.visualization.events.addListener(table, 'ready', function() { 
    var headerCells = document.querySelectorAll('#myTableDiv table tr:first-child td'); 
    for (var i = 0; i < headerCells.length; i++) { 
     // access the header cell element with headerCells.item(i) 
    } 
});