即使ajax返回正确的输入,jqPlot也不会显示ajax数据
问题描述:
我正在尝试构建一个简单的基于Ajax的饼图,但我感觉还是错误的结局。即使我试图在这个社区中被别人吸引也没有成功。即使ajax返回正确的输入,jqPlot也不会显示ajax数据
我的代码:
$(document).ready(function(){
var ajaxDataRenderer = function(url, plot) {
var ret = null;
console.log(url);
console.log(plot);
$.ajax({
async: false,
url: url,
dataType:'json',
success: function(data) {
ret = data;
console.log(data);
console.warn(data);
console.log(ret);
}
});
return ret;
};
var jsonurl = "sub/auditLogStatusesForGraph_json.dsp";
plo12 = $.jqplot('chartdiv', jsonurl,{
title: 'AJAX JSON Data Renderer',
dataRenderer: ajaxDataRenderer,
seriesDefaults: {
renderer: $.jqplot.PieRenderer,
rendererOptions: {
showDataLabels: true
}
},
legend: { show: true, location: 'e' }
});
});
的jsonurl返回
[[['INFO',21451],['ALERT',13201],['ERROR',89],['SYSTEM',30],['0',1]]]
但仍然得到错误:
Error: No data specified jquery.jqplot.min.js:4:14135
正如你可以看到我已经试着调试管道到控制台,但看起来“成功”部分根本不适用。即使我试图改变它“完成”。
任何想法我在那里有错?
非常感谢您提前。
答
把下面的代码中你success: function(data)
plo12 = $.jqplot('chartdiv', jsonurl,{
title: 'AJAX JSON Data Renderer',
dataRenderer: ajaxDataRenderer,
seriesDefaults: {
renderer: $.jqplot.PieRenderer,
rendererOptions: {
showDataLabels: true
}
},
legend: { show: true, location: 'e' }
});