0

php から jquery に配列を渡すにはどうすればよいですか 両方とも同じファイルにあります。コードの下のグラフを作成するために使用されるデータを含む $array2 という名前の配列があり、chartdata を使用していますが、php スクリプトの変数を使用したいです。

 <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript">
var chart;

var chartData = [{
    student: 5,
    marks: 0},
{
    student: 8,
    marks: 50},
{
    student: 10,
    marks: 100}];


AmCharts.ready(function() {
    // SERIAL CHART
    chart = new AmCharts.AmSerialChart();
    chart.dataProvider = chartData;
    chart.categoryField = "marks";
    chart.startDuration = 1;

    // AXES
    // category
    var categoryAxis = chart.categoryAxis;
    categoryAxis.labelRotation = 90;
    categoryAxis.gridPosition = "student";

    // value
    // in case you don't want to change default settings of value axis,
    // you don't need to create it, as one value axis is created automatically.
    // GRAPH
    var graph = new AmCharts.AmGraph();
    graph.valueField = "student";
    graph.balloonText = "[[category]]: [[value]]";
    graph.type = "column";

    graph.lineAlpha = 0;
    graph.fillAlphas = 8.4;
    chart.addGraph(graph);

    chart.write("chartdiv");
});
 </script>
4

4 に答える 4

1

json データを使用して、php を jquery に渡すことができます。

PHPで

$php_data = json_encode($your_php_data_in_array);

jqueryへの割り当て

var data = <?php echo $php_data ;?>

jqueryで値を取得する

var chart_data_arr = json_decode(data);

これで、jquery の配列にデータができました。

于 2013-07-18T05:57:50.457 に答える
0

json_encode を使用してダンプできる最も簡単な (必ずしも最も確実/効率的/モジュラー/何とかではない) 可能な方法

var chartData = [{
    student: 5,
    marks: 0},
{
    student: 8,
    marks: 50},
{
    student: 10,
    marks: 100}];

//Instead
var chartData=<?php echo json_encode($chartdata)?>

または、特定のリンクで json をレンダリングする json アクションを使用してそれを渡し、jquery を使用してこの URL をクエリし、そのデータでグラフを生成します。

于 2013-07-18T05:49:50.573 に答える
0

javascript で php データを使用するには:-

var javascriptVariable = <?php echo json_encode($php_array); ?>;

したがって、javascriptVariable は、php データに従ってオブジェクト/配列になります。

于 2013-07-18T05:50:33.360 に答える
0

これを試して :

<?php 

  $your_php_array = array(.....);
?>
var chartData = <?php json_encode($your_php_array)?>;

参照: http://php.net/manual/en/function.json-encode.php

于 2013-07-18T05:51:17.743 に答える