我有一个php文件,我读取我的MySQL数据库并返回一个JSON数组。然后假设JSON数组保存到JavaScript变量中,然后JQPlot假设加载它。每次我运行JavaScript来获取数据并创建图表时,我都会在Google Chrome JavaScript控制台中得到"Uncatch #"。知道为什么我可能会收到此错误吗?我在 ajax 调用后得到的响应是这样的:
[["Internet Explorer",0],["Firefox",0],["Safari",0],["Opera",0],["Chrome",1],["Other",0]]
据我所知,这是正确的。
这也是我的Javascript:
$(document).ready(function(){
var browsers = $.post("stats.php", {action:"getbrowsers"});
var plot1 = jQuery.jqplot ("browsers_pie", [browsers], {
seriesDefaults: {
renderer: jQuery.jqplot.PieRenderer,
rendererOptions: {
showDataLabels: true
}
},
legend: { show:true, location: "e" }
});
});
你还没有告诉jquery你期待JSON回来,所以你只是得到一个恰好包含JSON的普通字符串,而不是从JSON字符串解码的数据结构。
var browsers = $.post("stats.php", {action:"getbrowsers"}, 'json');
^^^^^^^^