簡體   English   中英

如何從javascript訪問java.util.List會話?

[英]How to access java.util.List session from javascript?

在Java中,我的代碼是

List abcList;   
request.getSession().setAttribute("abc", abcList);

我想使用javascript訪問此列表,

var myVariable='<%=(List)session.getAttribute("abc")%>';

我沒有在javascript中獲得list(abcList)值......

您需要將列表序列化為Javascript對象。 有一些庫可以幫助您: https : //stackoverflow.com/questions/338586/a-better-java-json-library

您必須編寫將列表作為javascript數組打印出來的代碼。 這可能只是導致

var myVariable='ArrayList@123455'

但是你需要的是

var myVariable = ["element1", "element2, ...]

使用json序列化庫。 那些為您做打印。 或編寫一個json打印機,實際上非常簡單^^。

你不能那樣做。 您將必須通過遍歷Java列表來創建列表。 您可以嘗試這樣的事情...

var myVar = [];
<%
List list = (List)session.getAttribute("abc");
for(int i = 0; i < list.size(); ++i){
    out.println("myVar.push('" + list[i] + "');");
}
%>

到底要實現什么? 請記住,JavaScript將在客戶端瀏覽器上執行,因為Java代碼將在服務器上。 因此,您不應從javascript引用Java變量。 代替使用jsp標記,您只能在服務器上的加載時獲得列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM