2012-08-02 12 views
6

Obecnie pracuję z tabelami wykresów Google. Mam problem z wybranymi opcjami. Chcę wyłączyć selekcje, ale wydaje się to niemożliwe. Próbowałem nawet (naprawdę brzydki sposób) jak detektor zdarzeń w wybranej części, który używa metody clearChart(), aby to usunąć.Google Chart Tabela Usuń zaznaczenie

Oto kod testu z laboratorium. Zauważ, że nie mogę użyć tego w 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', '[email protected]', true, '20-07-2012'], 
      ['<input type="checkbox">', 'name2', '[email protected]', 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> 

Problem polega na tym, że jeśli będę korzystać z tych pól wyboru przycisk (niebieski) wybór jest denerwujące i mylące.

Dzięki.

Odpowiedz

11

Innym rozwiązaniem jest zresetowanie wybór, gdy „wybierz” zdarzenie jest opalane:

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

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

Oto przykład: http://jsfiddle.net/Rxnty/

Ten natychmiast usuwa wybór bez konieczności narysowany.

+0

Dzięki, wygląda to na "najlepszy" sposób na zrobienie tego. Wstydu w Google nie można wyłączyć zamiast przesłonić! –

2

Jednym ze sposobów uzyskania pożądanego efektu jest przekazanie API informacji o tym, która klasa powinna zostać zastosowana po wybraniu wiersza, co pozwala na określenie wartości background-color wiersza.

JS:

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

CSS:

.selected { background-color: white; } 

Widać to działa na jsfiddle.

+0

To bardziej brzydka niż moja opcja. Dodaj styl do usuwania dodanego stylu .... –

+0

Chociaż może nie być idealnym rozwiązaniem (a nie brzydkim), daje tylko możliwość nadpisania domyślnych stylów Google. – cchana

+0

Czy nie można uniknąć zastąpienia? –

Powiązane problemy