我是一個初學javascript的人,我不知道如何在java中編程,並試圖理解servlet真的很難。我所瞭解的是如何創建一個jsp頁面,該頁面向我的Postgres 9.2數據庫提交一個複雜的查詢,並將結果行返回給html,然後將其顯示在客戶端的iframe中。我想要做的是在相同的jsp頁面中獲取相同的結果行,並將它們發送到客戶端的javascript數組中,這樣我就可以在flot中繪製數據。如果我能使這個工作起來,那麼可能會讓我很難理解java和serlets,並且會讓我的繪圖變得更容易,因爲圖形會精確地繪製每次查詢更改時查詢返回的內容。我不想查詢數據庫更多的必要。我以前在這裏讀過,使用jsp除了打印html之外的東西是不推薦的,但是根據這篇文章Populating JavaScript Array from JSP List 我可能能夠將結果行打印到數組中,並且可以在客戶端使用javascript。然而,我不能讓客戶端看到數組變量,並且我確定我有些東西缺失,並且不瞭解某些基本的東西。從jsp服務器端傳遞數字數組到javascript客戶端端
我使用我的查詢結果打印出來的行「C:的forEach」和「c:去」到HTML看起來像這樣:
"Jan" 1 1426.50 472.65
"Feb" 2 1449.00 482.10
"Mar" 3 1459.50 485.55
"Apr" 4 1470.00 489.00
"May" 5 1480.50 492.45
"Jun" 6 1491.00 495.90
"Jul" 7 1489.50 493.35
"Aug" 8 1512.00 502.80
"Sep" 9 1510.50 500.25
"Oct" 10 1533.00 509.70
"Nov" 11 1543.50 513.15
"Dec" 12 1542.00 510.60
從我在那個鏈接理解,我應該能夠在我的JSP文件中使用此代碼
var withdraw_v = [[ 1.0, 1426.50],[ 2.0, 1449.00],[ 3.0, 1459.50],[ 4.0, 1470.00],[ 5.0, 1480.50],[ 6.0, 1491.00],[ 7.0, 1489.50],[ 8.0, 1512.00],[ 9.0, 1510.50],[ 10.0, 1533.00],[ 11.0, 1543.50],[ 12.0, 1542.00]];
:做一個數組這個樣子的
<sql:query var="rs" dataSource="jdbc/medford">
My sql query goes here
</sql:query>
<script type="text/javascript">
var withdraw_v = [
<c:forEach var="row" items="${rs.rows}" varStatus="status">
[ <c:out value="${row.Month_num}"/>, <c:out value="${row.Average_Withdrawals}"/>]
<c:if test="${not status.last}">,</c:if>
</c:forEach>
];
</script>
在我的HTML/javascr IPT文件,我嘗試使用數組來繪製我的數據:
$.plot("#plot", withdraw_v);
但它返回的withdraw_v變量是不確定的。 我確定我有這個錯誤。任何人都可以指出什麼可能會使這項工作?我試過閱讀關於google-gson的內容,但我並不瞭解它,或者在這種情況下它是否會幫助我。
查看HTML源文件。查看Javascript是否由JSP編寫的錯誤,並且是正確的。您還可以使用Firefox和工具 - >錯誤控制檯到Javascript運行時類型錯誤。 – developerwjk
序言,論證等並不是真的有必要。請問你的問題;如果這是一個「初學者」的問題,那就好了,只需去問問。只添加我們需要的信息,以瞭解您要問的內容以及我們需要做什麼來提供幫助。 –
螢火蟲輸出顯示從NET-> HTML響應爲:<腳本類型= 「文本/ JavaScript的」> 變種withdraw_v = [ \t \t [1.0,1426.50] \t, \t \t \t [2.0,1449.00 ] \t, \t \t \t [3.0,1459。50] \t, \t \t \t [4.0,1470.00] \t, \t \t \t [5.0,1480.50] \t, \t \t \t [6.0,1491.00] \t, \t \t \t [ 7.0,1489.50] \t, \t \t \t [8.0,1512.00] \t, \t \t \t [9.0,1510.50] \t, \t \t \t [10.0,1533.00] \t, \t \t \t [11.0,1543.50] \t, \t \t \t [12.0,1542.00] \t \t ]; – Jan