javascript - 谷歌图表与ajax

标签 javascript jquery google-visualization

我看不到我错过了什么。我似乎无法使用一点 ajax 运行 Google 图表 api。我做错了什么?

<html>
  <head>      
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript">
  google.load("visualization", "1", {packages:["corechart"]});
  google.setOnLoadCallback(drawChart);
  function drawChart() {
   var dataSet =  $.ajax({
        url: "phpdata.php",
            async: false            
    }).responseText;
    var data = google.visualization.arrayToDataTable([
    dataSet
    ]);

    var options = {
      title: 'Company Performance'
    };

    var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
    chart.draw(data, options);
  }


</script>
</head>
<body>
      <div id="chart_div" style="width: 900px; height: 500px;"></div>
</body>
</html>

我的 PHP 数据:

['年份', '固定 Assets '],

['2009', 1],

['2010', 1.2],

['2011', 1.6]

最佳答案

我不知道它是否能解决您的问题,我在渲染从 ajax 调用调用的部分时遇到了类似的问题。 drawChart 函数没有被调用,这基本上意味着 setOnLoadCallback 没有按预期触发。为了克服这个问题,我修改了我的调用如下:

 google.load("visualization", "1", {packages:["corechart"]});
    //google.setOnLoadCallback(drawChart);
      $(function() {
        drawChart(); //works
      });
    function drawChart() {
   }

所以基本上我离开了 google 方法,并制作了自己的自调用函数,每当页面呈现或 div 更新时就会调用该函数。

关于javascript - 谷歌图表与ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11751851/

相关文章:

javascript - jQuery在div中查找图像并将src保存为变量以用作css背景图像

javascript - 将 360 jQuery 轮限制为 300

javascript - 同一页面上有多个 Google 图表

javascript - 谷歌图表 : “Uncaught (in promise) Error: Unknown header type: 4.7278” error

javascript - Ajv 关键字和自定义错误消息

javascript - CanvasJs,更新数据

Javascript 可拖动 div 背景

javascript - 谷歌图表,在轴上设置最小范围

php - 从 PHP 获取数组值到 javascript

javascript - JQuery 中的链接。它到底是如何运作的