<分区>
例如,我有一些数据库中的数据可以通过 php 获取。
我想通过一些花哨的 javascript 图表插件将数据显示为图表。
有两种方法可以完成这项工作。
首先让php在JS脚本中输出行数据。比如下面的代码,
图表.php
<?php
$data=Array();
//$data would be assigned some value from database
?>
<script>
var data=[];
data=<?php echo json_encode[$data];?>;
draw_fancy_chart(data);
</script>
优点是这种方法效率很高,只要从服务器请求页面,用户就可以直接看到图表(假设draw_fancy_chart函数效率很高)。
但缺点是我无法提取 JS 脚本,甚至无法对 draw_fancy_chart.js 进行一些缩小。所有用户都可以通过 View 源查看我的 JS。
第二种方法是使用 AJAX。
chart_ajax.php
echo json_encode[$data];
chart.html
<script>
$.ajax({
url: "chart_ajax.php"
}).done(function(data) {
draw_fancy_chart(data);
});
</script>
优点是我可以把所有的JS脚本打包成一个JS文件。 但是用户体验很差,用户会因为 ajax 请求而面临加载微调框。正如我们所知,不需要请求。
有人能给我一个更好的解决方案吗?非常感谢。