这是我第一次发帖,所以如果我遗漏了什么,请告诉我.
我最近开始搞乱AJAX,我正在尝试开发一个简单的仪表板,从我们的数据库中提取信息并将其显示在谷歌的表格视图中的网页上.但是我在Chromes Javascript控制台中一直得到错误"Uncaught Error:Not a array format + en,default,table.I.js:55".下面是html页面中的ajax代码:
<script type='text/javascript'>
google.load('visualization', '1', {packages:['table']});
google.setOnLoadCallback(drawChart);
function drawChart() {
var jsonData = $.ajax({
url: "livesearch.php?chart=bars",
dataType:"json",
async: false
}).responseText;
alert(jsonData);
var data = new google.visualization.arrayToDataTable(jsonData);
data.addColumn('string', 'Status');
data.addColumn('number', 'Orders');
data.addRows(jsonData);
var chart = new google.visualization.Table(document.getElementById('chart_div'));
chart.draw(data , {width: 800, height: 150});
setTimeout('drawChart()',500000);
}
</script>
Run Code Online (Sandbox Code Playgroud)
这是我的PHP脚本正在构建json数组.
while ($row = sqlsrv_fetch_array($result))
{
$c[] = array($row['status'], array('v' => $row['countx'], 'f' =>
$row['countx']), $row['countx']);
}
echo json_encode($c);
Run Code Online (Sandbox Code Playgroud)
当我在返回json后在我的javascript中设置警报时,它采用以下格式:
[{"COLS":[{"id":"Status","type":"String"},{"id":"Orders","type":"Number"}],"rows":[{ "C":[{ "v": "GEND"},{ "v":11}]}]}]
Comp,Gend和Hold只是我们系统中订单的状态.数字是该状态下的订单数量.如前所述,我只是创建一个仪表板,以特定的间隔显示此信息.我可以使用javascript"$('div#status')中的语法来获取更新信息.load('livesearch.php?chart = …