Javascript 在PHP中使用While循环的Google甘特图

Javascript 在PHP中使用While循环的Google甘特图,javascript,php,google-visualization,Javascript,Php,Google Visualization,我想在php中使用while循环显示多个google甘特图,但这段代码只显示1个甘特图(第一个)。我想用循环显示所有图表,以便从数据库中检索数据,并用图表显示在每个表行中 <table> <?php $i=0; while($i<4){ echo" <script > google.charts.load('current', {'packages':['gantt']});

我想在php中使用while循环显示多个google甘特图,但这段代码只显示1个甘特图(第一个)。我想用循环显示所有图表,以便从数据库中检索数据,并用图表显示在每个表行中

    <table>
    <?php 
      $i=0;
      while($i<4){
      echo"
        <script >
        google.charts.load('current', {'packages':['gantt']});
        google.charts.setOnLoadCallback(drawChart);

    function drawChart() {

      var data = new google.visualization.DataTable();
      data.addColumn('string', 'Task ID');
      data.addColumn('string', 'Task Name');
      data.addColumn('string', 'Resource');
      data.addColumn('date', 'Start Date');
      data.addColumn('date', 'End Date');
      data.addColumn('number', 'Duration');
      data.addColumn('number', 'Percent Complete');
      data.addColumn('string', 'Dependencies');

      data.addRows([
        ['2014Spring', 'Spring 2014', 'spring',
         new Date(2014, 2, 22), new Date(2014, 5, 20), null, 100, null],
        ['2014Summer', 'Summer 2014', 'summer',
         new Date(2014, 1, 12), new Date(2014, 2, 20), null, 100, null],
         ['2015Winter', 'Winter 2015', 'winter',
         new Date(2015, 11, 21), new Date(2016, 2, 21), null, 0, null],

      ]);

      var options = {
        height: 200,
        gantt: {
          trackHeight: 25
        }
      };

          var chart = new       google.visualization.Gantt(document.getElementById('chart_div$i'));

      chart.draw(data, options);
    }
  </script>

  <tr>


     <td>    Hello </td>
      <td id='chart_div$i'></td>

      </tr>

      ";
      $i++;
      }
    ?>

</table>


绘制多个材质图表可能是一个已知问题。不确定“甘特图”是否为物料图,但由于它未包含在corechart中…——您可以尝试使用冻结版本
'44'
'43'
或更低版本,而不是
'current'
——据我所知,这适用于IE,可能还需要元标记,请参阅-->