2016-01-20 13 views

risposta

7

Rimuovere Google errori, intercettare l'evento 'error' sul grafico o altro oggetto.
Quando l'evento viene generato, utilizzare google.visualization.errors.removeError

Qui, ho volutamente causare un errore, rimuoverlo da Google chart, e visualizzarli nella mia div

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

 
function drawChart() { 
 
    var data = google.visualization.arrayToDataTable([ 
 
    ["Element", "Density", { role: "style" } ] 
 
    ]); 
 

 
    var view = new google.visualization.DataView(data); 
 
    view.setColumns([0, 1, 
 
        { calc: "stringify", 
 
        sourceColumn: 1, 
 
        type: "string", 
 
        role: "annotation" }, 
 
        2]); 
 

 
    var chart = new google.visualization.ColumnChart(document.getElementById("chart_div")); 
 

 
    google.visualization.events.addListener(chart, 'error', function (googleError) { 
 
     google.visualization.errors.removeError(googleError.id); 
 
     document.getElementById("error_msg").innerHTML = "Message removed = '" + googleError.message + "'"; 
 
    }); 
 

 
    chart.draw(view, {height: 20}); 
 
}
<script src="https://www.google.com/jsapi"></script> 
 
<div id="chart_div"></div> 
 
<div id="error_msg"></div>

+0

ha funzionato perfettamente! Riesco a ridisegnare il grafico ogni volta che la finestra si ridimensiona e genera errori. Ho aggiunto il tuo suggerimento per l'ascoltatore di rimozione degli errori alla fine della chiamata e funziona come un incantesimo! – TheYuwana

Problemi correlati