通过ajax在PHP和Google Charts之间传递多个数据阵列

时间:2014-01-06 16:42:14

标签: javascript php ajax

我正在使用以下ajax调用成功准备Google charte。我的脚本myscript.php读取数据库,准备图表列和行($ array),然后以“echo json_encode($ array)”结束。

但是,我需要myscript.php来组合一些将显示在实际图表上方和下方的页眉和页脚HTML。我浪费了大部分时间试图找到如何将数据数组($ array)和另外两个变量($ header和$ footer)传递回drawChart()JavaScript,然后显示最终代码。< / p>

在我发疯之前,有人可以帮助或指出我正确的方向。谢谢!

    function drawChart() {
    var jsonData = $.ajax({
        url: "myscript.php",
        dataType:"json",
        async: false
        }).responseText;  
    var dataTable = new google.visualization.DataTable(jsonData);
    var options = {
        'is3D':                     false,
        'width':                    310
    };
    var chart = new google.visualization.PieChart(document.getElementById('chart'));
    chart.draw(dataTable, options);
    }

1 个答案:

答案 0 :(得分:0)

您是否可以在客户端生成HTML?
如果你真的需要,你可以将HTML作为对象发送到JSON ..

{ "header": "<h2>Header</h2>", "footer": "<p>Footer</p>", "data": [] }

确保您了解JSON如何作为在客户端和服务器之间传输信息的简单方法。理解$ header和$ footer在客户端机器(浏览器)上不可用;你的脚本必须将它们转换为可转移的方式,这就是JSON格式运行良好的原因(浏览器实现Javascript)