私はphp codeigniter mvcフレームワークを使用しています。私のコントローラーは次のコードで構成されています
$data2['rows2']=$this->data_model->getYear();
$this->load->view('new',$data2);
そして、私のビュー(ヘッドセクション内)には次のコードがあります
<script>
$(document).ready(function() {
var namesArr = **<?php echo var_dump(json_decode($rows2));?>;**
var progressTrendsData = [[1304294461000,69,1304899261000,28],[1304294431000,3,1304899161000,32],[1304294431000,3,1304899161000,32],[1304294431000,3,1304899161000,32]];
var chart;
var options = {
chart: {
renderTo: 'trendsDiv',
type: 'spline'
},
series: [{
name: '',
data: []
}]
};
for(var i=0;i<namesArr.length;i++) {
options.series.push({
name: namesArr[i],
data: progressTrendsData[i]
});
}
chart = new Highcharts.Chart(options);
});
</script>
これは、ビューのスクリプト部分で PHP の値を呼び出す正しい方法ですか? スクリプトをボタン クリック イベントとして使用したかったのでvar namesArr
、配列を取得して保存する必要があります['sdad','sadsad'.....]
。そのためにはajaxを使用する必要がありますか?もしそうなら、ここで ajax を使用する方法の例を挙げてください。
更新しました
次の方法で試しましたが、出力が表示されませんでした。
<script>
$(document).ready(function() {
//var namesArr = <?php echo var_dump(json_decode($rows2));?>;
var namesArr = new Array();
namesArr = <?php $rows2; ?>
var progressTrendsData = [[1304294461000,69,1304899261000,28],[1304294431000,3,1304899161000,32],[1304294431000,3,1304899161000,32],[1304294431000,3,1304899161000,32]];
var chart;
var options = {
chart: {
renderTo: 'trendsDiv',
type: 'spline'
},
series: [{
name: '',
data: []
}]
};
for(var i=0;i<namesArr.length;i++) {
options.series.push({
name: namesArr[i],
data: progressTrendsData[i]
});
}
chart = new Highcharts.Chart(options);
});
</script>