当图表第一次加载初始默认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);
}
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.谢谢!
我确信有一个简单的答案,虽然我只有PHP的经验.为什么"披萨"阵列在我将其传递给我的"my_pizza"功能时只会更改为"my_pizza"?如何将原始数组保存到函数外部的函数中?功能运行完毕后,披萨阵列应该没有改变.我注意到,如果我更改了我的字符串变量(pie),它将在函数运行后保持不变,与数组不同.
简而言之,我希望第一组结果与第二组完全相同.
var pizza = [];
pizza.push('crust');
pizza.push('ham');
var pie = "apple"
function bake_goods(my_pizza, my_pie){
console.log(my_pizza);
console.log(my_pie);
delete my_pizza['1'];
my_pie = "peach";
console.log(my_pizza);
console.log(my_pie);
}
//first run
bake_goods(pizza, pie);
//console logs
//['crust','ham']
//apple
//['crust']
//peach
//second run
bake_goods(pizza, pie);
//console logs
//['crust']
//apple
//['crust']
//peach
Run Code Online (Sandbox Code Playgroud) 编辑:我应该注意到我知道我可以使用引号.谢谢你的回答,我从未听说过Octals.
我注意到了一些事情,这更像是一个好奇的问题,而不是需要帮助.为什么会这样?
print_r(array(00,01,02,03,04,05,06,07,08,09,010,011,012,013,014,015,016,017,018,019,020));
Array
(
[0] => 0
[1] => 1
[2] => 2
[3] => 3
[4] => 4
[5] => 5
[6] => 6
[7] => 7
[8] => 0
[9] => 0
[10] => 8
[11] => 9
[12] => 10
[13] => 11
[14] => 12
[15] => 13
[16] => 14
[17] => 15
[18] => 1
[19] => 1
[20] => 16
)
Run Code Online (Sandbox Code Playgroud)
一旦达到8,一切都搞砸了.是什么导致这个?