2016-11-18 82 views
1

我在尝试动态填充morris图表时出现问题。在ASP.NET MVC中填充morris图表

这是JSON字符串:

[{"Name":"Paul Walker","ExamQuantity":35},{"Name":"Vin Diesel","ExamQuantity":1}] 

然后在JavaScript我这样做:

var model = @Html.Raw(Json.Serialize(ViewBag.TeacherExams)); 

     new Morris.Bar({ 
     element: 'chartTeacherExams', 
     data: model, 
     xkey: 'Name', 
     ykeys: ['ExamQuantity'], 
     labels: ['Quantidade'] 
    }); 

但当图表负荷,我得到这个图片:

enter image description here

任何想法我做错了什么?

+0

控制台中是否有错误? –

+0

@ Alexandru-IonutMihai No. – perozzo

+0

尝试用'data:[{“Name”:“Paul Walker”,“ExamQuantity”:35},{“Name”:“Vin Diesel”,“ExamQuantity” :1}]' –

回答

1

请使用您的json数组尝试更改data:model

在你的情况下,使用:data:[{"Name":"Paul Walker","ExamQuantity":35},{"Name":"Vin Diesel","ExamQuantity":1}] .Array已经是JSON格式。

错就错在这条线:var model = @Html.Raw(Json.Serialize(ViewBag.TeacherExams));

Json.Serialize变成JSON对象JSON字符串。

+0

非常感谢您的建议。我删除了'var model = @ Html.Raw(Json.Serialize(ViewBag.TeacherExams));'并添加了这个:'var info = JSON.parse('@ Html.Raw(ViewBag.TeacherExams)');'。然后它工作! – perozzo

+0

不客气。干得好! 。 –