如何在jsp里面的javascript中访问来自服务器的java列表

Plz考虑这个场景.我有一个名为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);

第二种方式……使用< script>您的< c:foreach>中的标记标签:-

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