的特性“文件,”我下面@Sam Farajpour加马里的从答案:How to populate google charts using data from database created via code first - ASP.Net MVCjQuery.getJSON()错误:浏览器链接:未能调用的返回值的回调:类型错误:无法读取空
那是我的script.js
google.charts.load('current', { packages: ['corechart', 'line'] });
google.charts.setOnLoadCallback(drawLineColors);
function drawLineColors() {
var data = new google.visualization.DataTable();
data.addColumn('number', '@Model.Days');
data.addColumn('number', '@Model.Time');
console.log("!!!");
//data.addRows([
// [9, 12], [11, 14]
//]);
$.getJSON("http://localhost:4411/GetChart", null, function (chartData) {
$.each(chartData, function (i, item) {
data.addRows([[item.Days, item.Time]]);
);
var options = {
title: 'You can see on chart in which time you eat',
hAxis: {
title: 'Days'
},
vAxis: {
title: 'Time'
},
colors: ['#FF6B00', '#0033FF']
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
});
}
正如你可以看到我放的“http://localhost:4411/GetChart”,而不是“@ Url.Action(‘GetChart’)”,因为第一个没有工作。
而在控制器我有:
[Route("/GetChart")]
public IActionResult GetChart()
{
return Json(_db.database
.Select(p =>new {p.Days, p.Time}));
}
http://localhost:4411/GetChart在浏览器返回:
[{"Days":1101,"Time":20},{"Days":1102,"Time":20},{"Days":1103,"Time":20}]
评论硬编码版本“[9,12],[11,14 ]“工作正常,但当前的script.js版本在浏览器控制台(F12)中返回错误:
Uncaught Error: Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3
!!!
browserLink:64 [00:57:43 GMT+0400 (Russian Daylight Time)] Browser Link: Failed to invoke return value callback:
TypeError: Cannot read property 'files' of null
因此,我有没有数据的空图。我需要帮助来了解我在哪里有问题?也许问题在于脚本正在以[[days],[time]]的格式查找数据,但是它以格式:[{data},{time}]获取数据。如果是这样,我怎么能修理它? 让我知道是否需要任何其他信息。感谢您的时间和答案。
所以你需要在你的代码中使用这个版本的jquery:https://cdnjs.com/libraries/jquery/1.9.1。 – applecrusher
我已经在NuGet包管理器下载了1.9.1版本,但问题仍然存在。 @applecrusher,你知道如何解决它吗? – Anela
是否有一个HTML文件来放置jQuery代码或导入脚本的方式? – applecrusher