javascript char.js data.addRow не читает число из json - PullRequest
0 голосов
/ 31 октября 2018

Я не могу получить диаграмму для чтения числа из JSON Я передаю json в js диаграмму в data.addRow, не считываю возраст как число, если я ставлю число, работай нормально. Мне нужно знать, чтобы сделать весь код, это просто тест для более крупного проекта.

    <!doctype html>
<html>
<head>
    <?php
    $$estudent[]=array(
    "name" => "luis", 
    "age" => "10");
    $objJson=json_encode($estudent);
    ?>

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">

    var json=eval(<?php echo $objJson; ?>);

    google.charts.load('current', {'packages':['corechart']});
    google.charts.setOnLoadCallback(drawChart);

    function drawChart() {

        var data = new google.visualization.DataTable();
        data.addColumn('string', 'NAME');
        data.addColumn('number', 'AGE');

        for(i = 0; i < json.length; i++)
            data.addRow([json[i].name, json[i].age ]);
            /// do not work the Json[i].age in the number colunm
            //if i use a number like 10 works

        var options = {'title':'TITTLE','width':500,'height':300};

        var chart = new 
google.visualization.BarChart(document.getElementById('chart_div'));
chart.draw(data, options);
    }
</script>
</head>
    <body>
        <div id="chart_div"></div>
    </body>
</html>

1 Ответ

0 голосов
/ 31 октября 2018

вы можете использовать parseFloat или parseInt ...

data.addRow([json[i].name, parseFloat(json[i].age) ]);
...