Asp.net mvc 4 amcharts饼图不会加载数据
控制器: 模型:所有实现细节都包含太多的代码,但它确实返回了有效的JSON字符串模型。getStatus将使用以下方法返回jsonResult: JSON文件以这种格式返回数据Asp.net mvc 4 amcharts饼图不会加载数据,asp.net-mvc-4,amcharts,Asp.net Mvc 4,Amcharts,控制器: 模型:所有实现细节都包含太多的代码,但它确实返回了有效的JSON字符串模型。getStatus将使用以下方法返回jsonResult: JSON文件以这种格式返回数据 { "project.Tasks_Status": [ { "TaskName": "Task 1", "TaskCompleted": 1000.0 }, { "TaskName": "Task 2", "TaskCompleted": 0.0
{
"project.Tasks_Status": [
{
"TaskName": "Task 1",
"TaskCompleted": 1000.0
},
{
"TaskName": "Task 2",
"TaskCompleted": 0.0
},
...
]
}
看法
问题是,一旦我加载我的视图,VS就会抛出一个异常,并在我的脚本标记中突出显示上述代码,并显示以下错误消息:
中第1行第5209列的未处理异常
0x800a01bd-JavaScript运行时错误:对象不支持此操作
有人对阿姆查特很熟悉,能帮我吗?非常感谢。提前感谢您提供的任何帮助。您的代码有两个问题: 1由于您正在制作饼图,因此需要在视图中包含pie.js。serial.js用于行和列:
<script src="http://www.amcharts.com/lib/3/amcharts.js"></script>
<script src="http://www.amcharts.com/lib/3/pie.js"></script>
<script src="http://www.amcharts.com/lib/3/plugins/dataloader/dataloader.min.js"></script>
您需要修复负载以仅返回数组,或者使用dataloader的回调从负载中指定project.Tasks\U Status属性中的数组:
"dataLoader": {
"url": "../Home/GetTaskStatus",
"format": "json",
"postProcess": function(data) {
return data["project.Tasks_Status"];
}
}
天才纯粹的天才多纳泰罗TMNT
<script src="http://www.amcharts.com/lib/3/amcharts.js"></script>
<script src="http://www.amcharts.com/lib/3/serial.js"></script>
<script src="http://www.amcharts.com/lib/3/plugins/dataloader/dataloader.min.js"></script>
<div id="chartdiv" style="width: 100%; height: 500px;"></div>
<script>
var chart = AmCharts.makeChart( "chartdiv", {
"type": "pie",
"theme": "light",
"titleField": "TaskName",
"valueField": "TaskCompleted",
"dataLoader": {
"url": "../Home/GetTaskStatus",
"format": "json"
},
});
</script>
<script src="http://www.amcharts.com/lib/3/amcharts.js"></script>
<script src="http://www.amcharts.com/lib/3/pie.js"></script>
<script src="http://www.amcharts.com/lib/3/plugins/dataloader/dataloader.min.js"></script>
[
{
"TaskName": "Task 1",
"TaskCompleted": 1000.0
},
{
"TaskName": "Task 2",
"TaskCompleted": 0.0
},
...
]
"dataLoader": {
"url": "../Home/GetTaskStatus",
"format": "json",
"postProcess": function(data) {
return data["project.Tasks_Status"];
}
}