要排除我正在做的事情。我有一个循环,从我的数据库中提取的信息创建一个表。我在循环中设置了一个超全局变量,它将我的一个表字段值赋给变量;那部分没有问题。
问题是当我尝试在highcharts函数中调用该变量时,它只是不起作用。图表没有显示出来。
$(document).ready(function() {
var $container = $('$global_var');
Highcharts.setOptions({
chart: {
backgroundColor: {
linearGradient: [0, 0, 500, 500],
stops: [
[0, 'rgb(255, 255, 255)'],
[1, 'rgb(240, 240, 255)']
]
},
borderWidth: 2,
plotBackgroundColor: 'rgba(255, 255, 255, .9)',
plotShadow: true,
plotBorderWidth: 1
}
});
var chart1 = new Highcharts.Chart({
chart: {
renderTo: $container,
},
xAxis: {
type: 'datetime'
},
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4],
pointStart: Date.UTC(2010, 0, 1),
pointInterval: 3600 * 1000 // one hour
}]
});
});
</script>
在创建的表中,我插入了一个带有动态ID的<div>
(与我试图与highcharts函数一起使用的数组的值相同),这也有效。唯一的问题是我似乎无法将变量传递给highcharts函数的renderTo部分。
以下是我在表循环中声明我的超全局变量的方法(再次,工作正常):
$GLOBALS['a'] = $row['Name'] . $temp_array;
TL; DR ..如果有人知道如何在Highcharts函数中将变量传递给renderTo,我真的很想知道你是怎么做的。希望这是足够的信息,但如果不是,我会很乐意提供所要求的。谢谢!
答案 0 :(得分:0)
在渲染中,你需要在返回时添加字符串而不是对象。
所以它应该是
var $container = 'global_var', //id of container, string
并在图表中
chart: {
renderTo: $container,
},
如果你想将js变量与来自php变量的字符串组合起来,它应该是:
var $container = '<?php echo $variable ?>',