Java 将值从servlet传递到GoogleMaps
我想把纬度和经度传递给google初始化函数,问题是不同的用户可能有不同的起点,也就是说,不同的位置 我现在得到的是:Java 将值从servlet传递到GoogleMaps,java,javascript,html,google-maps,servlets,Java,Javascript,Html,Google Maps,Servlets,我想把纬度和经度传递给google初始化函数,问题是不同的用户可能有不同的起点,也就是说,不同的位置 我现在得到的是: <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DOCTYPE
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Reminiscence Therapy</title>
<script
src="http://maps.googleapis.com/maps/api/js?key=AIzaSyDY0kkJiTPVd2U7aTOAwhc9ySH6oHxOIYM&sensor=false">
</script>
<link rel=stylesheet
href="http://jquery.malsup.com/cycle2/demo/demo-slideshow.css">
<link rel=stylesheet href="http://fonts.googleapis.com/css?family=Acme">
<link rel=stylesheet href="http://jquery.malsup.com/cycle2/site.css">
<script>
var map;
function initialize(lat, lng) {
var mapProp = {
center : new google.maps.LatLng(lat, lng),
zoom : 18,
mapTypeId : google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("googleMap"), mapProp);
}
google.maps.event.addDomListener(window, 'load', function() {
var lat = 51.45644, lng = -0.120850;
initialize(lat, lng);
});
</script>
</head>
<body>
<h2>My day in map</h2>
<div style='float: left'>
<form name='form1' action='FriendsListServlet' method='get'>
<input type='submit' name='btnsalvar' value='Photos of the day'>
</form>
</div>
<div>
<form name='form2' action='MapServlet' method='get'>
<input type='submit' name='btnsalvar' value='My day in map'>
</form>
</div>
<br />
<div id="googleMap"></div>
<div id="myWorkContent" class="myWorkContent">
<!-- Your images over here -->
<c:forEach items="${photosName}" var="photo">
<img src='images/<c:out value="${photo}" />' style="height: 80px;" />
</c:forEach>
</div>
<script src="http://www.google-analytics.com/urchin.js"></script>
<script>
_uacct = "UA-850242-2";
urchinTracker();
</script>
</body>
</html>
正在使用值调用初始化函数
var lat = 51.45644, lng = -0.120850;
但这不是我想要的。我在这个页面后面有一个servlet。servlet所做的是计算起点,我希望映射使用servlet计算的点作为其中心。如何做到这一点?将jsp代码更改为
var lat = <%= request.getAttribute("lat") %>, lng = <%= request.getAttribute("lng") %>;
在servlet中,在转发到jsp之前,需要添加
request.setAttribute("lat",<Value which you calculated>);
request.setAttribute("lng",<Value which you calculated>);
或者,如果使用重定向到页面而不是转发,则可能需要读取lat,lng from request.getParameter thx很多,它与request.getAttribute一起工作。我花了一点时间把它标记为真的,因为我需要尝试一下。
request.setAttribute("lat",<Value which you calculated>);
request.setAttribute("lng",<Value which you calculated>);