我在使用HighChart进入我的php代码时遇到了问题。
最初我创建了一个graph.php并设法让它自己运行起来。
然而,当我将它集成到另一个php(adminlist.php)时,图形无法显示,并且在调试时,错误显示" TypeError:ha不是函数"和TypeError:$(...)。highcharts不是一个函数(对不起,这里无法附加图片)
adminlist.php中的代码如下:
<ul class="nav nav-pills nav-stacked">
<li <?php if($_GET['function'] == 'graph'){echo 'class="active"';}?>><a href="adminlist.php?function=graph">Analyzer</a></li>
</ul>
if ($_GET['function'] == 'graph'){
include('graph.php');
}
我在graph.php中的代码(如果我直接调用graph.php,但是当我将它包含在adminlist.php中时,它会起作用)。源代码如下:
<div id="mostpopular" style="height: 400px"></div>
<script src="bootstrap-3.2.0-dist/js/jquery.min.js"></script>
<script src="bootstrap-3.2.0-dist/js/bootstrap.min.js"></script>
<script src="bootstrap-3.2.0-dist/js/bootstrap-markdown.js"></script>
<script src="bootstrap-3.2.0-dist/js/jquery.hotkeys.js"></script>
<script src="Highcharts-4.0.4/js/highcharts.js"></script>
<script src="Highcharts-4.0.4/js/highcharts-3d.js"></script>
<script src="Highcharts-4.0.4/js/modules/exporting.js"></script>
<script type="text/javascript">
$(function () {
$('#mostpopular').highcharts({
chart: {
type: 'column',
margin: 75,
options3d: {
alpha: 10,
beta: 25,
depth: 70
}
},
title: {
text: 'Sale transaction volume'
},
subtitle: {
text: 'List of total sales by food category'
},
plotOptions: {
column: {
depth: 25
}
},
xAxis: {
categories: ['<?php echo $foodnamearr[0]; ?>', '<?php echo $foodnamearr[1]; ?>','<?php echo $foodnamearr[2]; ?>','<?php echo $foodnamearr[3]; ?>','<?php echo $foodnamearr[4]; ?>','<?php echo $foodnamearr[5]; ?>','<?php echo $foodnamearr[6]; ?>','<?php echo $foodnamearr[7]; ?>']
},
yAxis: {
opposite: true
},
series: [{
name: 'Sales',
data: [<?php echo $qty[0]; ?>,<?php echo $qty[1]; ?>, <?php echo $qty[2]; ?>, <?php echo $qty[3]; ?>, <?php echo $qty[4]; ?>, <?php echo $qty[5]; ?>, <?php echo $qty[6]; ?>, <?php echo $qty[7]; ?>]
}]
});
});
</script>
答案 0 :(得分:7)
老问题,但如果有人发现自己在搜索:
自4.0.4起,ha
是error
方法的缩小版本。在定义error
之前调用{1}}的脚本中的一次是在第106行,它在那里检查脏的Highcharts命名空间:
if (win.Highcharts) {
error(16, true);
} else {
Highcharts = win.Highcharts = {};
}
由于该错误,您没有收到实际错误。预期输出是:
uncaught exception: Highcharts error #16: www.highcharts.com/errors/16
注意:当然,根据您的Highcharts版本,代码可能已更改。
答案 1 :(得分:1)
检查您是否在您正在使用的模板中导入相同的highcharts javascript文件,以及您所包含的模板。
就我而言,它解决了这个问题。