2016-05-31 6 views
3

Googleの円グラフの特定のスライスが選択されているときに、特定の情報でモーダルを表示しようとしています。別のスライスが次々と選択されても、同じスライスが2回目に連続して選択されたときにイベントが発生しない場合、コードは正常に機能しています。Googleの円グラフと同じスライスの即時選択が認識されない

google.visualization.events.addListener(chart, 'select', selectHandler); 
function selectHandler() 
        { 
         var selectedItem = chart.getSelection()[0]; 
         if (selectedItem) 
         { 
          alert("here"); 
         } 
        } 

答えて

3

イベントは解雇ですが、スライスがクリックされた二回目は、それが-selected アンです。

あなたがアクセスしようとする前に、選択範囲の長さを確認してください - >[0]

次の例を参照してください...

google.charts.load('current', { 
 
    callback: function() { 
 
    var data = google.visualization.arrayToDataTable([ 
 
     ['Task', 'Hours per Day'], 
 
     ['Work',  12], 
 
     ['Eat',  2], 
 
     ['Drink',  1], 
 
     ['Commute', 1], 
 
     ['Surf',  1], 
 
     ['Watch TV', 1], 
 
     ['Sleep',  6] 
 
    ]); 
 

 
    var pieChart = new google.visualization.PieChart(document.getElementById('piechart')); 
 
    google.visualization.events.addListener(pieChart, 'select', function() { 
 
     document.getElementById('selection').innerHTML = 'Items selected: ' + pieChart.getSelection().length; 
 
    }); 
 
    pieChart.draw(data, {}); 
 
    }, 
 
    packages: ['corechart'] 
 
});
<script src="https://www.gstatic.com/charts/loader.js"></script> 
 
<div id="piechart"></div> 
 
<div id="selection"></div>

+0

をありがとう!この説明は本当に助けになりました:) – monsoonrainbow

関連する問題