[英]Passing data to Google Chart API
首先,Google的Google Chart API示例(實際上是javascript)
<script type="text/javascript">
// There is of coz some thing else but i just ignore them, just focus on the data here
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Year');
data.addColumn('number', 'Sales');
data.addColumn('number', 'Expenses');
data.addRows([
['2004', 1000, 400],
['2005', 1170, 460],
['2006', 660, 1120],
['2007', 1030, 540]
]);
</script>
現在我修改成為這個
<script type="text/javascript">
function drawChart(reading) {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Year');
data.addColumn('number', 'Sales');
data.addColumn('number', 'Expenses');
data.addRows([reading]);
</script>
(我在servlet中實現)現在,我希望傳遞我自己的數據(從數據庫讀取后)並將其轉換為字符串。 通過調用drawChart將其傳遞給修改后的javascript(閱讀)
//After some action retrieving data from db and make it to a data string like this
String reading = "['2011',1000,400],['2009',800,200]";
out.println("<body onload=\"drawChart("+reading");\">");
//drawing is here
out.println("</body>");
但是,似乎JS不能接受這樣的字符串變量,我應該將哪種格式傳遞給JS? 或者我不應該使用String閱讀而是其他人? 但是Java中沒有這種變量類型。
讓Java打印與您在普通的JavaScript中編寫的數據完全相同的數據。 您根本不需要轉換數據。 Java不執行JavaScript。 Java只生成JavaScript代碼,以后在到達webbrowser時執行。
String reading = "[['2004', 1000, 400],['2005', 1170, 460],['2006', 660, 1120],['2007', 1030, 540]]";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.