我想将我的模型传递给控制器,我为我的chartJS生成一个JsonResult。
控制器:
public JsonResult LineChartData(FooViewModel) { ... }
我的Razor中的脚本(有效,但没有传递任何值):
<script>
var c = document.getElementById("lineChart");
var ctx = c.getContext("2d");
var tData = $.getValues("/Bar/LineChartData");
var myLineChart = new Chart(ctx, {
type: 'line',
data: tData,
});
</script>
我尝试使用@ Html.Action或@ Html.Url填充'tData',但没有运气。
注意:
$ .getValues是一种扩展方法:
jQuery.extend({
getValues: function (url) {
var result = null;
$.ajax({
url: url,
type: 'get',
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function (data) {
result = data;
}
});
return result;
}
});
我看到了一些类似的问题,但我无法理解它。
我能通过以下链接解决我的问题: Making a Simple Ajax call to controller in asp.net mvc 我通过构造函数传递了ViewModel。