Julien Julien - 2 months ago 18
Javascript Question

Leaflet - get latitude and longitude of a marker inside a pop-up

I use the Leaflet Draw plugin.

My goal is to create markers and show a pop up in which I can get latitude and longitude coordinates.

I manage to get these coordinates with a javascript alert but I definitely don't know how to put the coordinates into my pop up.

Here is the snippet :

map.on('draw:created', function (e) {
var type = e.layerType,
layer = e.layer;

if (type === 'marker') {
map.on('click', function(e) {
var lat = e.latlng.lat;
var lng = e.latlng.lng;
alert ("Latitude : " + lat + "\nLongitude : " + lng);
}),

layer.bindPopup(
'e.latlng.lat');
}

drawnItems.addLayer(layer);
});


But it does not work. The pop up shows "e.latlng.lat" whereas I'd want to have the exact value.

Have you any solutions ? Thanks.

Answer
map.on('draw:created', function (e) {
    var type = e.layerType,
        layer = e.layer;

    map.addLayer(layer);

    if (type === 'marker') {    
        layer.bindPopup('LatLng: ' + layer.getLatLng()).openPopup();
    }

});