使用参数调整Google图表大小

时间:2018-12-05 22:10:02

标签: jquery ajax google-visualization

我有一个小问题。我打电话给我的数据库并返回一些数据。然后,我将此响应传递给我的Google图表功能

$(function () {
    $.ajax({
        type: "POST",
        url: "php/process.php",
        dataType: "json"
    }).done(function(response) {

        google.charts.load('current', {'packages':['corechart']});
        google.charts.setOnLoadCallback(function() { drawChart(response); });

    }).fail(function(jqXHR, textStatus) {
        return false;
    });
});

一切正常。问题是使它响应。根据我在网上看到的内容,要执行此操作,我只需添加一个调整大小的功能

$(window).resize(function(){
    drawChart();
});

但是,这不会包含我的回复中的数据。从我的Ajax请求获取数据到调整大小函数的最佳方法是什么?

谢谢

1 个答案:

答案 0 :(得分:1)

首先,谷歌的load语句将默认等待页面加载。
可以代替-> $(function () {});$(document).ready等使用...
每个页面加载只需调用一次,因此请先调用它。

然后您可以使用以下设置...

google.charts.load('current', {
  packages:['corechart']
}).then(function () {

  $.ajax({
    type: "POST",
    url: "php/process.php",
    dataType: "json"
  }).done(function(response) {

    drawChart(response);
    $(window).resize(function(){
      drawChart(response);
    });

  }).fail(function(jqXHR, textStatus) {
      return false;
  });

});

注意:您可以使用load语句返回的诺言,
代替-> setOnLoadCallback