2015-07-01 5 views
0

Я хочу получить значение заголовка столбца, когда пользователь нажимает на 1 из столбцов диаграммы. Отчет должен быть сгенерирован с параметрами, которые я извлекаю из диаграммы. Это то, что у меня есть до сих пор:Извлечение заголовка столбца значения google visualization

google.setOnLoadCallback(drawChart); 

    function drawChart() { 

     // Create our data table out of JSON data loaded from server. 
     var data = new google.visualization.arrayToDataTable([ 
     ['Month', '2014', '2015'], 
     ['Jan', 0, 200.00], 
     ['Feb', 0, 400.00], 
     ['Mar', 0, 700.00], 
     ['Apr', 0, 100.00], 
     ['May', 400.00, 900.00], 
     ['Jun', 1100.00, 0], 
     ['Jul', 3400.00, 0], 
     ['Aug', 2500.00, 0], 
     ['Sep', 2450.00, 0], 
     ['Oct', 3170.00, 0], 
     ['Nov', 2500.00, 0], 
     ['Dec', 1979.00, 0] 
       ]); 


     var options = { 
      title: 'Raised' 
     }; 
     var chart = new google.charts.Bar(document.getElementById('chart_div_month')); 


     function selectHandler() { 
      var selectedItem = chart.getSelection()[0]; 
      if (selectedItem) { 
       var month = data.getValue(selectedItem.row, 0); 
       var year = data.getValue(0, selectedItem.column); 
       window.location = 'report.php?submit=Submit&year=' + year + '&month=' + month; 

      } 

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



     chart.draw(data, options); 
    } 

Я могу получить параметр месяца, но не год.

+0

http://stackoverflow.com/questions/22537784/javascript-getting-datatable-column-names – Aldair

ответ

1

Чтение о Google Chart таблиц at their API page он говорит, что

getSelection() - Standard getSelection implementation. 
       Selection elements are all row elements. 
       Can return more than one selected row. 

Так GetSelection() не выбирает любой столбец, и поэтому var year = data.getValue(0, selectedItem.column); не будет работать.

Почему это так я не знаю, поскольку getSelection() возвращает как строку, так и столбец, но столбец всегда равен нулю (считается, что это не всегда было так, есть множество примеров где люди показывают, как это работает, но сегодня все они сломаны).

Я видел такой подход, который использует стандартный JavaScript (или это JQuery?), Чтобы определить, какой столбец щелкнул (щелкнул, не выбран) путем прослушивания кликами мыши на с.в. и получить свойство столбца, путь, но я похоже, не может найти его.

+0

Пожалуйста, дайте мне знать, если вы найдете рабочую ссылку – user3253002

+0

, для этого никто не должен был это делать раньше? – user3253002

Смежные вопросы