2

MySQL データベースを読み取り、JSON 配列を返す php ファイルがあります。次に、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

JSON が返されることを期待していることを jquery に伝えていないため、JSON 文字列からデコードされたデータ構造ではなく、たまたま JSON を含むプレーンな文字列を取得しているだけです。

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