我正在使用 Google 地图 API 和 JSP 创建一个应用程序。我遇到了问题,因为当我将事件添加到标记并使用查询字符串传递值时,我不断得到相同的值,而不是标记的实际值。有人可以让我知道我做错了什么吗?
<%
Query query2 = em.createNamedQuery("Factories.findAll");
List<Factories> factories = query2.getResultList();
for (int i = 0; i < factories.size(); i++) {
Float longitude = factories.get(i).getLongitude();
Float latitude = factories.get(i).getLatitude();
String name = factories.get(i).getName();
Integer id = factories.get(i).getFactoryID();
%>
var marker = new google.maps.Marker({
position: new google.maps.LatLng(<%=latitude%>, <%=longitude%>),
raiseOnDrag:true,
title: "<%=name%>",
clickable:true,
zIndex: <%=id%>,
map: map
});
google.maps.event.addListener(marker, 'click', function() {
window.location = "viewFireworksFactory.jsp?id=" + marker.getZIndex();
});
<% }%>