Google图表表删除选择

时间:2012-08-02 10:47:15

标签: javascript html css google-visualization

我目前正在使用Google图表。我的选择有问题。我想关闭选择,但似乎不可能。我甚至尝试(一种真正丑陋的方式)像选择部分上的事件监听器,它使用方法clearChart()来删除它。

这是测试的源代码。请注意,我不能在jsfiddle中使用它

<script type="text/javascript" src="https://www.google.com/jsapi" ></script>
<script type="text/javascript">
google.load("jquery", "1");

google.load('visualization', '1', {packages:['table']});

     function drawVisualization()
     {
          var data = google.visualization.arrayToDataTable([
          ['', 'Name', 'E-mail', 'Activated', 'Last login'],
          ['<input type="checkbox">', 'name1', 'name1@company.xxx', true, '20-07-2012'],
          ['<input type="checkbox">', 'name2', 'name2@company.xxx', true, '21-07-2012']

               ]);

               var options = {};
               options['showRowNumber'] = false;
               options['page'] = 'enable';
               options['allowHtml'] = true;
               options['pageSize'] = 18;
               options['pagingButtonsConfiguration'] = 'auto';

               var visualization = new google.visualization.Table(document.getElementById('table'));
               visualization.draw(data, options);
          }

          google.setOnLoadCallback(drawVisualization);

</script>
<div id="table"></div>

问题在于,如果我使用这些复选框,(蓝色)选择会让人感到厌烦和困惑。

感谢。

2 个答案:

答案 0 :(得分:13)

另一种选择是在触发“select”事件时重置选择:

google.visualization.events.addListener(visualization, 'select', selectHandler);

function selectHandler() {  
    visualization.setSelection([])
}

以下是一个示例:http://jsfiddle.net/Rxnty/

这会立即删除选择而无需重绘。

答案 1 :(得分:2)

实现所需效果的一种方法是告诉API在选择行时应该应用哪个类,允许您继续指定行的background-color

<强> JS:

options['cssClassNames'] = {}
options['cssClassNames']['selectedTableRow'] = 'selected';

<强> CSS:

.selected { background-color: white; }

您可以在jsfiddle上看到它。