Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 页面刷新时Google图表加载_Javascript_Jquery_Google Visualization - Fatal编程技术网

Javascript 页面刷新时Google图表加载

Javascript 页面刷新时Google图表加载,javascript,jquery,google-visualization,Javascript,Jquery,Google Visualization,我的谷歌图表工作正常,但我的页面在第一次触发显示图表时显示为空白。然后,当我刷新页面时,图表和其他所有内容都显示良好。 我是新手,你能帮我弄清楚吗。我的代码如下: 我的图表代码: <script type="text/javascript" src="https://www.google.com/jsapi"></script> <script type="text/javascript"> google.load("visualization", "1

我的谷歌图表工作正常,但我的页面在第一次触发显示图表时显示为空白。然后,当我刷新页面时,图表和其他所有内容都显示良好。 我是新手,你能帮我弄清楚吗。我的代码如下:

我的图表代码:

<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
   google.load("visualization", "1", {packages:["corechart"]});
   google.setOnLoadCallback(drawChart);

 function drawChart() {

 var data = google.visualization.arrayToDataTable([
 ['Projects', 'Time_Spent'],
  <?php

   $sql = 'SELECT * FROM ost_ticket where staff_id = '.$_GET['uid'].'';
  $res = db_query($sql);
  while($row = db_fetch_array($res)) {

   ?>

     ['<?php echo getProjectID($row['ticket_id']) ?>', <?php echo     getProjectTime($row['ticket_id']) ?>],


  <?PHP } ?>  

]);
var options = {
  title: '',

 legend: {
   position: 'labeled',
   pieSliceText:"value"                                    
},

 pieSliceText: 'label',
   width: 350,
    height: 400,
    chartArea:{left:5,top:20,width:"100%",height:"50%"}
  };

  new google.visualization.PieChart(
    document.getElementById('chart_div')).draw(data, options);
 }

    </script>

load(“可视化”、“1”、{packages:[“corechart”]});
setOnLoadCallback(drawChart);
函数绘图图(){
var data=google.visualization.arrayToDataTable([
[‘项目’、‘花费的时间’],
['', ],
]);
变量选项={
标题:“”,
图例:{
位置:'标记',
文本:“值”
},
请输入文本:“标签”,
宽度:350,
身高:400,
图表区:{左:5,上:20,宽:“100%”,高:“50%”
};
新google.visualization.PieChart(
document.getElementById('chart_div')).draw(数据、选项);
}

我认为google.load和google.setOnLoadCallback都调用jquery中的document.ready方法,如果调用两次,可能会导致空白HTML。试试这个,而不是那两行

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

希望它能起作用

太好了@Sightmamudassar,如果答案对你有用,请接受。