0

なぜこれがうまくいかないのか、私の人生では理解できません。JSON の値を使用して Highcharts 折れ線グラフを作成しようとすると、線が表示されません。

Javascript は次のとおりです。

var chart;
//Highcharts Options
    var options = {
        chart: {
            renderTo: 'chart'
        },
        title: {
            text: 'Monthly Total'
        },
        xAxis: {
            categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
        },
        yAxis: {
            title: {
                text: 'Number of Calls'
            }
        },
        series: [{
            type: 'line',
            name: 'Call Totals',
            data: []
        }]
    }
    $.post('/admin/personnel-stats/includes/controller.personnel-stats.php', {'mode' : 'chart', 'persID' : persID, 'year' : year},
           function(json) {
                options.series[0].data = json.data;
                chart = new Highcharts.Chart(options);
           }
    ), 'json';

JSON を生成する PHP は次のとおりです。

public function fetchPersonnelChart($persID, $year) {
        $fetchChart = $this->memDB->prepare("SELECT c.*, n.*
                                            FROM stats_count c
                                            LEFT JOIN stats_names n ON c.persID = n.id
                                            WHERE c.persID = :id AND YEAR(timestamp) = :year
                                            GROUP BY MONTH(timestamp) ORDER BY MONTH(timestamp)");
        $fetchChart->execute(array('id' => $persID, 'year' => $year));
        $chartResults = $fetchChart->fetchAll();

        foreach ($chartResults as $chartResult) {
            $chartOutput[] = (float)$chartResult['callCount'];
        }
        $output = array('data' => $chartOutput);
        echo json_encode($output);
    }

JSON は問題なく作成されており、最終的には次のようになります。 {"data":[10,12,15,13,19,12,12,8,7]}

どんなアイデアでも大歓迎です。ありがとう!

4

1 に答える 1

0

問題は..の配置でし'json'た常に単純なもの$.post()

于 2012-11-01T20:28:48.540 に答える