我有一个JSP文件,包含我的JSP代码和Javascript代码,JSP基本上有这个巨大的arrayList,我需要使用Javascript在谷歌地图对象上绘制陆地坐标,因为谷歌当前没有谷歌地图版本本机支持JSP,这是我的代码:
<%
List<LandCoordinates> annex = new LandCordinatesDAO().getLandCoordinates();
for (LandCoordinates an : annex) {
out.print(an.getX());
out.print(an.getY());
}
%>
<script>
function drawLandMarkCenter(x, y)
{
var plotCenter = {lat: x, lng: y};
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 18,
center: plotCenter,
mapTypeId: google.maps.MapTypeId.TERRAIN
});
return map;
}
如何从我的javascript代码访问List<LandCoordinates> annex
中的元素?
答案 0 :(得分:0)
我建议您将数据与JavaScript分开,这样可以避免使用scriplets并获得更清晰,更易于维护的代码。
首先,创建一个使用LandCoordinates生成JSON文件的servlet,如下所示:
StringJoiner sj = new StringJoiner(",", "[", "]");
for (LandCoordinates an : annex)
{
sj.add("{\"posX\":" + an.getX() + ","
+ "\"posY\":\"" + an.getY() +"\"}");
}
response.getWriter().println(sj.toString());
然后创建一个静态JavaScript,它使用AJAX来获取此JSON并执行您需要的任何操作。如果您显示整个代码我可以帮助您。