我试图将AJAX实现到highcharts,但由于某种原因无法使其工作 .
我的HTML和javascript看起来像这样:
function test () {
var options = {
chart : {
renderTo : 'container',
type : 'spline',
zoomType: 'x',
},
series : [{
data: []
}]
};
$.ajax({
url : 'data.php?year=' + year,
datatype : 'json',
success : function () {
options.series[0].setData(json['data']);
chart = new Highcharts.Chart(options);
},
});
}
data.php输出是:
{"name":2012,"data":[-1.4,-1.4,-1.3,-1.3,-1.3,-1.3,-1.3,-1.2,-1.3,-1.2,-1.2,-1.2]}
有什么想法有什么不对?
我将其更改为:function test(){var options = {chart:{renderTo:'container',type:'spline',zoomType:'x',},series:[{data:[],}]} ;
$.ajax({
url : 'data.php?year=' + year,
datatype : 'json',
success : function (json) {
options.series[0].data = json;
chart = new Highcharts.Chart(options);
},
});
}
但我仍然没有图表
2 回答
您忘记了成功函数的数据参数 .
应该
现在
json
在该函数中未定义 .如果你通过json加载系列对象,你需要将它解析为json(它是字符串)或在脚本中返回json . 更多如果你得到系列对象,你不能将它分配给数据对象,所以在你的情况下你需要使用
series: datajson