0

Google Visualization API を使用して JavaScript Web ツールを作成しています。私が欲しい機能の 1 つは、列をクリックするオプションと、はい-いいえオプションを持つことです。はいを選択すると、その特定の列が非表示になります。このリスナーと、列を非表示にするこの関数を追加しました。

    /* 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 のライブ ウィンドウです...

EDIT getSelection()は、あなたの質問により適していると思います。

于 2012-07-17T21:40:36.943 に答える