[英]Can't load Google Charts on ASP.net MVC4
I tried to add charts to my ASP.net MVC project using Google Charts 我试图使用Google Charts将图表添加到我的ASP.net MVC项目中
I used the simplest way to understand how does it work ! 我用最简单的方法来了解它是如何工作的!
On my Controller : 在我的控制器上:
public JsonResult Index()
{
var data = new[]
{
new {Name = "China", Value = 1336718015},
new {Name = "India", Value = 1189172906},
new {Name = "United States", Value = 313232044},
new {Name = "Indonesia", Value = 245613043},
new {Name = "Brazil", Value = 203429773},
};
return Json(data,JsonRequestBehavior.AllowGet);
}
On my Web Page 在我的网页上
</script><script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">// <![CDATA[
google.load("visualization", "1", { packages: ["corechart"] });
google.setOnLoadCallback(drawChart);
function drawChart() {
$.post('index', {},
function (data) {
var tdata = new google.visualization.DataTable();
tdata.addColumn('string', 'Country');
tdata.addColumn('number', 'Population');
for (var i = 0; i < data.length; i++) {
tdata.addRow([data[i].Name, data[i].Value]);
}
var options = {
title: "Top 5 Country's Population"
};
var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
chart.draw(tdata, options);
});
}
// ]]></script>
<div id="chart_div"></div>
All what I have is a text on a page : 我所拥有的只是一页上的文字:
[{"Name":"China","Value":1336718015},{"Name":"India","Value":1189172906},{"Name":"United States","Value":313232044},{"Name":"Indonesia","Value":245613043},{"Name":"Brazil","Value":203429773}] [{“名称”:“中国”,“值”:1336718015},{“名称”:“印度”,“值”:1189172906},{“名称”:“美国”,“值”:313232044}, {“名称”:“印度尼西亚”,“值”:245613043},{“名称”:“巴西”,“值”:203429773}]
For the example you are trying to get working, you need two pages - one that displays the chart (the one with the HTML and Javascript) and the other one that serves the data (your MVC controller). 对于您要开始工作的示例,您需要两个页面-一个页面显示图表(一个带有HTML和Javascript),另一个页面提供数据(您的MVC控制器)。
After that, you have to set the post line to your MVC page: 之后,您必须在MVC页面上设置发布行:
$.post('page/address', {},
You can use index
too, but in this case you have to move the page with HTML to another file (for example chart.html
) 您也可以使用index
,但是在这种情况下,您必须将带有HTML的页面移动到另一个文件(例如chart.html
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.