2016-04-22 47 views
0

我在jsp中使用來自控制器的Hashmap<String, String>。我需要解析Hashmap並獲取傳遞Key的值。我試圖通過使用hashmap的get方法傳遞密鑰來獲取值,但它不起作用。在JavaScript中解析java Hashmap <String,String>

var key = "keyString"; 
var valueStr = <%=hashMap.get(key)%>; 

上面的代碼給出錯誤,密鑰無法解析爲變量。但是,當我對hashmap中的關鍵值進行硬編碼時,我能夠獲得該值。

var valueStr = <%=hashMap.get("keyString")%>; 

回答

0

你試圖在JSP腳本,這是在服務器端編譯的情況下引用key。它不僅完全處於不同的上下文中,而且在JSP scriptlet(由服務器編譯)已經解析之後,您的JavaScript將在客戶端處理。

簡而言之,key不是一個變量,直到scriptlet已經解析爲止。

+0

感謝您的回答鋯石。如果你能讓我知道用Javascript解析Java HashMap的最佳方法,那將會很有幫助。 TIA。 – user903676

+0

由於您使用的是字符串,因此此答案可能適用於您 - http://stackoverflow.com/a/8877719/4793951 – Zircon

0

JSP在服務器端編譯並且Simple HTML返回給客戶端。您期望客戶端變量(在瀏覽器的JVM中)應該用於JSP Scriplet評估。然後你應該將它與請求一起傳遞給服務器。

相關問題