Jquery Google图表:来自.json文件的数据
我正在尝试使用.json文件中的值,使用google图表绘制一个折线图。我试过了,但没有成功 这是my.json文件Jquery Google图表:来自.json文件的数据,jquery,html,json,google-visualization,Jquery,Html,Json,Google Visualization,我正在尝试使用.json文件中的值,使用google图表绘制一个折线图。我试过了,但没有成功 这是my.json文件 [ { "Year":2005, "Sales":25000, }, { "Year":2006, "Sales":25085, }, { "Year":2007, "Sales":186230, }, { "Year":2008, "Sale
[
{
"Year":2005,
"Sales":25000,
},
{
"Year":2006,
"Sales":25085,
},
{
"Year":2007,
"Sales":186230,
},
{
"Year":2008,
"Sales":35036,
},
{
"Year":2009,
"Sales":15900,
},
{
"Year":2010,
"Sales":35700,
}
]
代码
错误
如何解决这个问题
// by returning the jqXHR object we can use the .done() function on it
// so the callback gets executed as soon as the request returns successfully
您不使用.done()
,因此当您传递obj
时,您传递的是一个jqXHR
对象,该对象很可能尚未获取数据
这应该起作用:
function drawChart() {
var myFile = "Data";
//Use getJSON and process the file contents in the callback function
$.getJSON(myFile + '.json', function(obj) {
var data = google.visualization.arrayToDataTable(obj);
var options = {
title: 'Chart Demo'
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
});
}
您不使用.done()
,因此当您传递obj
时,您传递的是一个jqXHR
对象,该对象很可能尚未获取数据
这应该起作用:
function drawChart() {
var myFile = "Data";
//Use getJSON and process the file contents in the callback function
$.getJSON(myFile + '.json', function(obj) {
var data = google.visualization.arrayToDataTable(obj);
var options = {
title: 'Chart Demo'
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
});
}
尝试从文件中获取json数据
var data = $.ajax({
url: "Data",
dataType: "json",
async: false,
}).responseText;
尝试从文件中获取json数据
var data = $.ajax({
url: "Data",
dataType: "json",
async: false,
}).responseText;
你能放一个
console.log(数据)吗代码>行后var data=google.visualization.arrayToDataTable(obj)
并查看您得到了什么…。@Will.i.在控制台中仍然得到相同的错误,即您声明了一个名为dataTable
的变量,该变量从未使用过。ya这是为了另一种需要。我删除了它。您在控制台中获得的console.log(数据)代码>?粘贴在这里…你能放一个console.log(数据)吗代码>行后var data=google.visualization.arrayToDataTable(obj)
并查看您得到了什么…。@Will.i.在控制台中仍然得到相同的错误,即您声明了一个名为dataTable
的变量,该变量从未使用过。ya这是为了另一种需要。我删除了它。您在控制台中获得的console.log(数据)代码>?粘贴在这里…因为我没有与谷歌可视化工作,我不能帮你。我只能指出错误的jQuery/javascript。因为我没有使用过谷歌可视化,所以我不能帮你。我只能指出错误的jQuery/javascript。