Javascript 在谷歌地图上绘制多个纬度和经度
我有很多拿铁Javascript 在谷歌地图上绘制多个纬度和经度,javascript,php,jquery,google-maps,Javascript,Php,Jquery,Google Maps,我有很多拿铁 var latlngs = [ {lat:25.774252,lng:-80.190262}, {lat:18.466465,lng:-66.118292}, {lat:32.321384,lng:-64.757370}, {lat:25.774252,lng:-80.190262}, ]; 实际上,它是使用ajax响应从数据库中检索的: $.ajax({ url: "getLatlng.php", type: 'post',
var latlngs = [
{lat:25.774252,lng:-80.190262},
{lat:18.466465,lng:-66.118292},
{lat:32.321384,lng:-64.757370},
{lat:25.774252,lng:-80.190262},
];
实际上,它是使用ajax响应从数据库中检索的:
$.ajax({
url: "getLatlng.php",
type: 'post',
dataType: 'json',
success: function(response) {
for (i = 0; i < response.length; i++) {
// what should be the code here for plotting them on google maps
}
},
error: function(xhr){
console.log(xhr);
}
});
$.ajax({
url:“getLatlng.php”,
键入:“post”,
数据类型:“json”,
成功:功能(响应){
对于(i=0;i
我希望他们在谷歌地图上绘图,每次我从数据库中更改一个latlng,标记也应该更改,而不必使用setInterval重新加载页面。这实际上是用于gps跟踪。我需要帮助。
感谢您的帮助。var marker=[];
var marker=[];
$.ajax({
url: "getLatlng.php",
type: 'post',
dataType: 'json',
success: function(response) {
for (i = 0; i < response.length; i++) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(lat, long),
map: map,
address: "Something here",
icon: 'http://maps.google.com/mapfiles/ms/icons/red-dot.png'
});
google.maps.event.addListener(marker, 'click', function () {
// Update Info Window Here
});
}
},
error: function(xhr){
console.log(xhr);
}
});
$.ajax({
url:“getLatlng.php”,
键入:“post”,
数据类型:“json”,
成功:功能(响应){
对于(i=0;i
希望您在ajax调用之前已经初始化了map和marker
要更新标记,您必须首先从地图中删除所有标记
下面是删除标记的函数
function DeleteMarkers() {
for (var i = 0; i < marker.length; i++) {
marker[i].setMap(null);
}
marker = [];
};
函数deleteMarkets(){
对于(变量i=0;i
只需在Ajax调用之前调用函数每次从服务器获取新信息时,只需设置标记的null
.setMap(null)
,然后在映射上再次设置.setMap()
。如何做到这两件事在这里被描述了100多次,所以谷歌文档在这一点上非常清晰和好。你需要做的是清除地图上的所有标记,然后每次都重新添加它们。你能有一个在谷歌地图上绘制多个标记的示例吗?是的,谢谢。但是我如何再次执行setMap(null)和setMap(map)?这样标记也将在不重新加载页面的情况下更新标记变量在哪里使用的?我想,它没有被使用,因为您使用“marker”变量在谷歌地图上绘图,而不是marker对不起,现在更新了:)谢谢您的帮助