如何将动态数据添加到morris条形图

时间:2015-09-15 16:01:09

标签: jquery ajax morris.js

我想通过ajax将数据添加到Morris条形图。以下是我获得ajax成功的json

[{"x":"2014-10-02","y":"1"},{"x":"2014-10-19","y":"1"},{"x":"2014-10-20","y":"1"},{"x":"2014-11-13","y":"1"}]

以下是js代码

var chart = Morris.Bar({
        element : 'normal-bar-graph',
        data : [{
            "x" : null,
            "y" : null
        }],
        xkey : 'x',
        ykeys : ['y'],
        labels : ['Added']
    });
$.ajax({
            type: "POST",
            url:  "some_url",
            data: {'user_report':[k,v]},

            success: function(html)                    
            {   
                if(html == "error")
                {
                alert('error');
                }
                else
                {
                    chart.setData(html);

                }
                hide_loading();
            }
        });

正在使用/morris/raphael.2.1.0.min.js/morris/morris.min.js。  chart.setData(html);功能无效,如Morris的文档中所述。

提前谢谢。如果有任何错误,请指出我。

如果可以提供帮助,也会制作一个jsbin:morris

1 个答案:

答案 0 :(得分:4)

删除引号。 setData需要一个数组。当您使用引号时,它会将其转换为字符串而不是数组。

像这样:chart.setData([{ "y": "2006", "a": 100, "b": 90 },{ "y": "2006", "a": 100, "b": 90 }]);