このガイドに基づいて、php ファイルで構築された JSON からデータを解析しようとしています。
https://google-developers.appspot.com/chart/interactive/docs/php_example?hl=en
JSON を適切な方法で作成しましたが、このコードを使用すると、JSON がうまく読み取れないようです。
function drawChart() {
var jsonData = $.ajax({
url: "loader.php",
dataType:"json",
async: false
}).responseText;
この例では Javascript オブジェクトに引用符がないため、JSON のキーの二重引用符に問題があると思います。それで、どこかで何かを逃す必要がありますか?
私のスクリプトコードは次のとおりです。
<script type="text/javascript">
// Load the Visualization API and the piechart package.
google.load('visualization', '1.0', {'packages':['corechart']});
// Set a callback to run when the Google Visualization API is loaded.
google.setOnLoadCallback(drawChart);
function drawChart() {
var jsonData = $.ajax({
dataType:"json",
url: "loader.php",
async: false
}).responseText;
// Create our data table out of JSON data loaded from server.
var data = new google.visualization.DataTable(jsonData);
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
chart.draw(data, {title: 'Results', width: 400, height: 240});
}
</script>
そして、私のloader.php
返すもののソースコードは次のとおりです。
{"cols":
[{"label":"Sources","type":"string"},
{"label":"Count","type":"number"}],
"rows":
[{"c":[{"v":"web"},{"v":"4757"}]},
{"c":[{"v":" iPhone"},{"v":"4324"}]},
{"c":[{"v":"Android"},{"v":"3294"}]},
{"c":[{"v":"BlackBerry\u00ae"},{"v":"2336"}]},
{"c":[{"v":"Instagram"},{"v":"951"}]}
]}
注: グラフはエラーなしで適切に読み込まれますが、JSON は読み込まれません。それは言う: その他 100%。したがって、ラベルも行も正しくロードされません。