的特性「文件,」我下面@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