Google Charts via Ajax / Jquery
Jeg er totalt Java-Noob, så har behov for lidt hjælp.Vil gerne vise nogen diagrammer via Google Charts.
Har også fået det til at virke som det skal - men pludselig besluttede jeg mig for at køre det hele over Jquery / Ajax - og så virker mine diagrammer pludselig ikke længere :/
Her er mit diagram:
<script type="text/javascript">
google.charts.load("current", {packages:["corechart"]});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
<? echo $chartDataDonut; ?>
]);
var options = {
title: 'Mit forbrug',
pieHole: 0.4,
curveType: 'function',
legend: { position: 'bottom'},
backgroundColor: { fill:'transparent' },
chartArea: {left:20, top:44,'width': '90%', 'height': '50%'},
is3D: true,
series: {
0: { color:'#8DB596' }
},
};
//var chart = new google.visualization.PieChart(document.getElementById('donutchart'));
var chart = new google.visualization.<? echo $chartType; ?>(document.getElementById('dynamicChart<? echo $cmp; ?>'));
chart.draw(data, options);
}
</script>
<div id="dynamicChart<? echo $cmp; ?>" style=" width: 100%; max-width: 900px; height:100%; max-height: 900px; "></div>
Bemærk at variablerne bliver leveret via PHP - hvilket fungerer fint, men ikke er kønt. Lærer stadig JS, så det skal nok komme :)
Jeg henter mit diagram via Ajax med følgende:
<script>
function getGchart() {
if (str.length == 0) {
document.getElementById("chart").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("chart").innerHTML = this.responseText;
}
};
xmlhttp.open("GET", "getChart.php", true);
xmlhttp.send();
}
}
</script>
<div id="chart"></div>
Der er ikke nogen fejlbeskeder i Console, så jeg har svært ved at gennemskue hvad problemet er.. Uanset hvad jeg prøver, så vises diagrammet bare ikke når det loades igennem Jquery / Ajax.. og det skal jeg da ha' 😄
Har du et forslag ?