0

我正在使用 Google Visualization API 编写一个 JavaScript 网络工具。我想要的功能之一是点击列的选项,并有一个-选项。选择“是”时,该特定列将被隐藏。我添加了这个监听器,以及这个隐藏列的函数:

    /* Define a table */
    var table = new google.visualization.ChartWrapper({
      'chartType': 'Table',
      'containerId': 'chart2',
      'options': {
        'sortColumn': '-1',
        'allowHtml' : 'true',
      },
      'style' : {
            'white-space' : 'nowrap'
      }
    });

    google.visualization.events.addListener(table, 'select',
            function (){
                var tablewrapper = table.getChart();
                //var columnId = tablewrapper.getColumnDescriptions();
                //console.log(tablewrapper);
                /*var columnIndex = tablewrapper.getViewColumnIndex(); */
                var selection = tablewrapper.getSelection();
                for(var i = 0; i < selection.length; i++){
                    var item = selection[i];
                    console.log('{row:' + item.row + ',column:' + item.column + '}');
                }

            }
    );

function hideColumn(columnIndex){
        $('#chart2 td:nth-child(' + (columnIndex+1) + ')').hide(); 
        return;
      }

但是,ev没有一个名为 的属性column,它可以引用列索引。有人知道我该怎么做,如果我遗漏了什么?谢谢!

4

1 回答 1

0

也许您需要Dataview?您可以使用hideColums()方法隐藏指定的列。

基础 DataTable 的只读视图。DataView 只允许选择列和/或行的子集。它还允许重新排序列/行,以及复制列/行。

视图是底层 DataTable 上的实时窗口...

我猜编辑 getSelection()会更适合您的问题。

于 2012-07-17T21:40:36.943 回答