覺得明白了很多,但新項目再次陷入..
我試圖從谷歌地圖API創建的地圖中刪除標記。
我有一個信息窗口內的刪除標記按鈕。的setMap不工作
下面有我的代碼:
function DeleteMarker(index) {
console.log(JSON.stringify(markers[index]));
markers[index].setMap(null); // problem is here
// - setMap is not a function
markers[index] = null;
}
GMaps.on('click',
map.map,
function(event) {
markers.push(new Point(map.markers.length, event.latLng.lat(), event.latLng.lng()));
var index = map.markers.length;
var lat = event.latLng.lat();
var lng = event.latLng.lng();
map.addMarker({
lat: lat,
lng: lng,
title: 'marker' + index,
infoWindow: {
content: '<p>Details:'
+ '<p>Latitude:' + event.latLng.lat() + '</p>'
+ '<p>Longitude:' + event.latLng.lng() + '</p>'+
'<button id ="btnDeleteMarker" onclick=DeleteMarker(\'' + index + '\')>Delete this stop</button>'
}
});
console.log(JSON.stringify(markers));
map.markers[index].infoWindow.open(map.map, map.markers[index]);
});
有什麼不對?我應該知道什麼才能以正確的方式使用它?
請提供一個[mcve]來演示您的問題。 – geocodezip
看起來像你應該使用'map.markers [index] .setMap(null)'而不是'markers [index] .setMap(null)' – geocodezip
@geocodezip你想知道什麼?我認爲是最小的,完整的和可驗證的例子 – whoiskatrin