2

我有一个 php 文件,我读取我的 MySQL 数据库并返回一个 JSON 数组。然后假设将 JSON 数组保存到 JavaScript 变量,然后假设 JQPlot 加载它。每次我运行 JavaScript 来获取数据并创建图表时,我都会在 Google Chrome JavaScript 控制台中看到“Uncaught #”。任何想法为什么我可能会收到此错误?我在 ajax 调用后得到的响应是这样的:

[["Internet Explorer",0],["Firefox",0],["Safari",0],["Opera",0],["Chrome",1],["Other",0]]

据我所知,这是正确的。

这也是我的Javascript:

    $(document).ready(function(){
        var browsers = $.post("stats.php", {action:"getbrowsers"});
        var plot1 = jQuery.jqplot ("browsers_pie", [browsers], { 
            seriesDefaults: {
                renderer: jQuery.jqplot.PieRenderer, 
                rendererOptions: {
                    showDataLabels: true
                }
            }, 
            legend: { show:true, location: "e" }
        });
     });
4

1 回答 1

3

你没有告诉 jquery 你期待 JSON 回来,所以你只是得到一个恰好包含 JSON 的纯字符串,而不是从 JSON 字符串解码的数据结构。

    var browsers = $.post("stats.php", {action:"getbrowsers"}, 'json');
                                                             ^^^^^^^^
于 2012-05-06T05:36:24.770 回答