Javascript 从JSON中的servlet请求获取纬度和经度,并在google地图对象中打印出来
我试图在一个页面上显示一个有几个标记的谷歌页面。这就是工作流程。加载页面时,调用以下jquery函数Javascript 从JSON中的servlet请求获取纬度和经度,并在google地图对象中打印出来,javascript,jquery,json,google-maps,servlets,Javascript,Jquery,Json,Google Maps,Servlets,我试图在一个页面上显示一个有几个标记的谷歌页面。这就是工作流程。加载页面时,调用以下jquery函数 $(document).ready(function(){ var mapCanvas = document.getElementById("map_canvas"); $.ajax('info', { type:"GET", dataType: "json", success: function(list){
$(document).ready(function(){
var mapCanvas = document.getElementById("map_canvas");
$.ajax('info', {
type:"GET",
dataType: "json",
success: function(list){
if(list.length)
{
for (var i = 0; i < list.length; i++)
{
var latLng = new google.maps.LatLng(list[i].latitude,list[i].longitude);
var marker = new google.maps.Marker({
position: latLng,
map: map
});
}
}
var mapOptions = {
zoom: 2,
center: new google.maps.LatLng(list[0].latitude,list[0].longitude),
mapTypeId: google.maps.MapTypeId.TERRAIN
};
var map = new google.maps.Map(mapCanvas, mapOptions);
}
});
});
我完全确定objectlist
是完整的,并且格式正确,是json风格的,因为当我尝试发出请求时,我得到的页面不是地图,而是打印出来的json列表。问题在于,我错误地将列表以回调函数打印列表的方式正确地传递回回调函数
问题是:如何将json列表传递到jsp页面?对于Servlet的每个请求,您只能响应一次。所以问题是,您想用JSON还是通过转发到JSP来响应?你不能两者都做 从问题中的代码来看,您似乎正在处理页面上的响应。为什么需要转发到另一个jsp 只要拿出这句话:
request.getRequestDispatcher("/WEB-INF/view/generalinfo/airports.jsp").forward(request, response);
您还应刷新PrintWriter:
response.getWriter().flush();
我没有正确理解你的问题。我将删除我的答案,因为它不能解决您的问题,而只是纠正一个错误。
response.getWriter().flush();