2011-07-20 8 views
5

Używam jquery-UI-map dla gmaps, i chcę zrobić popup po kliknięciu mapy na Gmaps.Usuń wszystkie znaczniki gmaps na jQuery usunąć przycisk

$(function() {    
       $('#map_canvas').gmap({'center': new google.maps.LatLng(-0.789275, 113.921327), 'callback': function(map) { 
         $(map).click(function(event) { 
          $('#map_canvas').gmap('addMarker', {'position': event.latLng, 'title': '', 'draggable': true, 'bound': false}, function(map, marker) { 
          $('#test').dialog({'modal':true, 'title': 'Edit and save point', 'buttons': { 
          "Remove": function() { 
           $(this).dialog("close"); 
           $(map).setMap(null); 
          }, 
          "Save": function() { 
           $(this).dialog("close"); 
          } 
         }}); 
           findLocation(marker.getPosition(), marker); 
          }).dragend(function(event) { 
           var self = this; 
           findLocation(event.latLng, this); 
          }).click(function() { 
           openDialog(this); 
          }) 
         }); 
        }}); 

Chcę usunąć znacznik Kiedy klikam przycisk usunąć w tym kodzie:

"Remove": function() { 
          $(this).dialog("close"); 
          $(map).setMap(null);} 

Ale marker nadal, ktoś mógłby mi pomóc. Dziękuję

Odpowiedz

6

Należy zadzwonić

$('#map_canvas').gmap('clearMarkers'); 
+0

Jesteś geniuszem johansalllarsson, dziękuję. To działa ! –

+3

Np, napisałem wtyczkę, więc powinienem wiedzieć :). Pls zaakceptować odpowiedź, gdy masz czas :) – johansalllarsson

+0

Otrzymuję "Uncaught TypeError: Nie można odczytać właściwości" apply "of undefined", gdy wywołuję ten kod, każdy pomysł, dlaczego? –

0

nie pracowałem z tej wtyczki wcześniej, ale szybki rzut oka na docs API zdaje się sugerować, że to może działać:

"Remove": function() { 
     $(this).dialog("close"); 
     $(map).clearMarkers(); 
} 
17

w wersji wtyczki 3 należy użyć:

$('#map_canvas').gmap('clear', 'markers'); 
Powiązane problemy