Когда диаграмма загружается в первый раз с начальным ответом Ajax по умолчанию, он работает нормально. Если я добавлю в console.log(chart_data), я увижу свои данные по умолчанию, а затем после отправки я увижу новые данные. Единственная проблема заключается в том, что диаграмма снова не нарисована. Я знаю, что функция drawChart не работает во второй раз, я просто не знаю, почему. Я предполагаю, что если это так, диаграмма будет перерисовываться. Извините, если ответ очевиден; Я очень новичок в jQuery/Ajax.
var chart_data;
var startdate = "default";
var enddate = "default";
function load_page_data(){
$.ajax({
url: 'get_data.php',
data: {'startdate':startdate,'enddate':enddate},
async: false,
success: function(data){
if(data){
chart_data = $.parseJSON(data);
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(function(){ drawChart(chart_data, "My Chart", "Data") })
}
},
});
}
load_page_data();
function drawChart(chart_data, chart1_main_title, chart1_vaxis_title) {
var chart1_data = new google.visualization.DataTable(chart_data);
var chart1_options = {
title: chart1_main_title,
vAxis: {title: chart1_vaxis_title, titleTextStyle: {color: 'red'}}
};
var chart1_chart = new google.visualization.BarChart(document.getElementById('chart1_div'));
chart1_chart.draw(chart1_data, chart1_options);
}
Любая помощь будет оценена по достоинству. Спасибо!