簡體   English   中英

如何在我的jsp中的javascript中訪問來自服務器的Java列表

[英]How to access a java list coming from the server in javascript inside my jsp

請考慮這種情況。 我有一個名為Person的Java類,如下所示:

Person
---------
Integer Id 
String name
String address

現在,通過我的spring控制器,將人員列表傳遞到我的jsp頁面(neighbors.jsp),如下所示:

List<Persons> persons = new ArrayList<Person>();
.
.
.
return new ModelAndView("/neighbors").addObject("persons", persons);

現在問題出在這里。 我在neighbors.jsp中嵌入了javascript格式的google maps api,以顯示登錄人員的位置。這很好。 Google地圖還提供地址比較。 我想顯示位於用戶地址5英里范圍內的其他人的地址標記。 每個標記都是指向要顯示該特定人的信息的頁面的鏈接。

假設我以以下格式訪問每個地址,該如何調用javascript函數?

<c:forEach items="${persons }" var="person">

       <!-- I want to pass each address ${person.address} to the javascript functions thats going to compare addresses --> 

</c:forEach>

有人可以在這里幫助我解決方案嗎?

兩種方法可以做到:

第一種方式 ...您可以將值設置為允許javascript訪問的隱藏字段:-

<c:forEach items="${persons}" var="person" varStatus="i">
   <input id="address${i.count}" type="hidden" value="${person.address}">
</c:forEach>

在您的javascript中:-

yourJavascriptFunction(document.getElementById("address1").value);

第二種方式 ...在<c:foreach>標記中使用<script> <c:foreach>標記:-

<c:forEach items="${persons}" var="person" varStatus="i">
   <script>
       yourJavascriptFunction("${fn:replace(person.address, "\"", "\\\"")}");
       ...
   </script>
</c:forEach>

暫無
暫無

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

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