使用Ajax加载multile php文件

时间:2016-02-03 13:33:03

标签: javascript php jquery ajax highcharts

我想在一个页面上显示6个不同的图表。 我为此载入6个不同的PHP文件(并每隔15分钟重新加载一次)。 在我的代码中它全部分开,女巫我瘦它非常干净&高性能。 这样做或任何更好的建议仍然可以吗?

<script type="text/javascript"  />
$(document).ready(function(){
  get_main();
  get_chart_1();
  get_chart_2();
  get_chart_3();
  get_chart_4();
  get_chart_5();
});

function get_main(){
    $('#chart_main').load('chart_data/day_main.php', function(){
       setTimeout(get_main, 900000);
    });
}
function get_chart_1(){
    $('#chart_1').load('chart_data/day_chart_1.php', function(){
       setTimeout(get_chart_1, 900000);
    });
}
function get_chart_2(){
    $('#chart_2').load('chart_data/day_chart_2.php', function(){
       setTimeout(get_chart_2, 900000);
    });
}
function get_chart_3(){
    $('#chart_3').load('chart_data/day_chart_3.php', function(){
       setTimeout(get_chart_3, 900000);
    });
}
function get_chart_4(){
    $('#chart_4').load('chart_data/day_chart_4.php', function(){
       setTimeout(get_chart_4, 900000);
    });
}
function get_chart_5(){
    $('#chart_5').load('chart_data/day_chart_5.php', function(){
       setTimeout(get_chart_5, 900000);
    });
}

1 个答案:

答案 0 :(得分:0)

我只做一个函数,它遍历元数据数组,加载所有图表并定期调用自身。 E.g。

var Charts = ['chart_main;day_main', 'chart_2;day_chart_2', ....];
function loadCharts(){
    for (var i in Charts){
        var eleFil = Charts[i].split(';'); 
        $('#'+eleFil[0]).load('chart_data/'+eleFil[1]+'.php');
    }
    setTimeout(loadCharts, 900000);
}
loadCharts();