8

我目前正在使用 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>

问题是,如果我使用这些复选框,(蓝色)选择令人讨厌和混乱。

谢谢。

4

2 回答 2

16

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

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

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

这是一个例子:http: //jsfiddle.net/Rxnty/

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

于 2012-08-27T02:56:35.547 回答
2

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

JS:

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

CSS:

.selected { background-color: white; }

您可以看到它在jsfiddle上运行。

于 2012-08-02T14:58:59.407 回答