用javascript隐藏谷歌可视化列

hiding a google visualization column with javascript

本文关键字:可视化 谷歌 隐藏 javascript      更新时间:2023-11-22

我正在使用Google Visualization API编写一个JavaScript web工具。我想要的功能之一是在列中单击,并具有yes-no选项。如果选择了yes,则该特定列将被隐藏。我添加了这个监听器和这个函数来隐藏列:

    /* 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的属性,该属性可以引用列索引。有人知道我该怎么做吗?如果我错过了什么?谢谢

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

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

视图是底层DataTable上的活动窗口。。。

编辑getSelection()可能更适合你的问题。