2016-04-28 69 views
2

我试图插入从PHP带到了谷歌图表值,就像这样:的Javascript:将数据插入谷歌图

var JSVAR1 = "<?php echo $PHPVAR1; ?>"; 
window.alert(JSVAR1); // data displayed fine 
data.addRows([ 
    ['Pie Section 1', 51], 
    ['Pie Section 2', 7], 
    ['Pie Section 3', 4] 
]); 

我想通过JSVAR1取代“51”(做的回声或其他)。我已经尝试了几件事,但没有任何作用。我怎样才能做到这一点 ?提前致谢。

编辑:这里是一个什么不起作用名单:

['Pie Section 1', JSVAR1] 
['Pie Section 1', "<?php echo $PHPVAR1; ?>"] 
['Pie Section 1', "<?php echo json_encode($PHPVAR1); ?>"] 
+0

我不确定你在问什么。你试图用'JSVAR1'变量替换'51'吗? window.alert是否显示正确的值? – GrumpyCrouton

+0

是的,你理解正确。 Window.alert显示正确的数据。 –

回答

0

应该是相当直截了当:

var JSVAR1 = "<?php echo $PHPVAR1; ?>"; 
window.alert(JSVAR1); // data displayed fine 
data.addRows([ 
    ['Pie Section 1', JSVAR1], 
    ['Pie Section 2', 7], 
    ['Pie Section 3', 4] 
]); 
+0

他肯定会问别的吗? – GrumpyCrouton

+0

window.alert()附近的注释表示该值正确显示。所以,第一个(也是唯一可以考虑的可用信息)是最明显的一个:) –

+0

@Tudor:我以前已经尝试过,它不起作用。 –

0
var JSVAR1 = "<?php echo $PHPVAR1; ?>"; 
window.alert(JSVAR1); // data displayed fine 
data.addRows([ 
     ['Pie Section 1', JSVAR1], 
     ['Pie Section 2', 7], 
     ['Pie Section 3', 4] 
]); 

这应该工作,但是你要说它不”在评论中,你是这样试过的吗?

var JSVAR1 = "<?php echo $PHPVAR1; ?>"; 
window.alert(JSVAR1); // data displayed fine 
data.addRows([ 
     ['Pie Section 1', "<?php echo $PHPVAR1; ?>"], 
     ['Pie Section 2', 7], 
     ['Pie Section 3', 4] 
]); 
+0

我已经尝试过,它也不起作用,对不起。其实我问这个问题是因为这个解决方案看起来并不重要。 –

0

对我感到羞耻。这是数据解析的问题。解决这样的:

var JSVAR1 ="<?php echo $PHPVAR1; ?>"; 
data.addRows([ 
['Pie section 1', parseInt(JSVAR1)], 
//... 
]); 

结论:如果任何人有谷歌图表的问题,一定要解析你的数据,即使它似乎没用。

+0

当你将它存储为一个var时,你将它存储为一个字符串(它被包裹在''''中).Google图表要求你匹配在该列上设置的数据类型,这样你可以像你一样解析,或者像'(int)JSVAR1'那样强制转换它# – shamsup

+0

这是正确的...愚蠢的东西... my mystake ... –