0
我想使用Google Annotation圖表繪製一些數據。當我硬編碼我的JavaScript作爲數據下,我得到的圖表正確使用jstl在java servlet中創建google.visualization.DataTable()
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('date', 'Date');
data.addColumn('number','Level');
data.addColumn('string', 'Activity');
data.addRows([
[new Date(2017,1,14,0, 1), 88, undefined],
[new Date(2017,1,14,0, 16), 83, undefined],
[new Date(2017,1,14,0, 31), 78, undefined],
...
[new Date(2017,1,14,23, 46), 74, undefined]
]);
var chart = new google.visualization.AnnotationChart(document.getElementById('chart_div'));
var options = {
displayAnnotations: true
};
chart.draw(data, options);
}
現在我試圖用一個JSTL的forEach通過將數據從一個Java對象進行迭代「讀經」,以取代data.addrows節其中有閱讀時間,readingLevel和readingAnnotation作爲參數 - 但我沒有得到我的圖表 - 只是得到一個空白頁。
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('date', 'Date');
data.addColumn('number','Level');
data.addColumn('string', 'Activity');
<c:forEach items="${Readings}" var="entry">
data.addRow(${entry.readingTime}, ${entry.readingValue}, ${entry.readingAnnotation});
</c:forEach>
var chart = new google.visualization.AnnotationChart(document.getElementById('chart_div'));
var options = {
displayAnnotations: true
};
chart.draw(data, options);
在另一個servlet,我用這個循環簡單地在我的瀏覽器打印的數據值和工作 - 這樣的循環能夠通過「讀」列表進行迭代並讀取參數,但它不是創建像硬編碼值那樣的數據集。
關於我需要做什麼來完成這項工作的任何想法?
謝謝Vikram。我更新了我的代碼(假設最後一個大括號是方括號)。但問題仍然存在。 –
您能顯示生成的javascript嗎? –
我該怎麼做? –