LeafletJsマップのforループに問題があります。何らかの理由で、配列から正しいIDを取得できず、代わりにすべてのクリックイベントの最後のIDを取得できます。IDの外側は$.get()
正しく表示されます。しかし、内部では、配列の最後を取得します。カスタムの鉱石を入手するオプションを拡張することは可能ですか?それを行う他の方法はありますか?
for (var i = 0; i < myColumnDefs.length; i++) {
var obj = myColumnDefs[i];
// obj.id = i;
var latitude = obj.GisLatitude.toFixed(5);
var longitude = obj.GisLongitude.toFixed(5);
//The correct id
console.log(obj.Id);
var m = L.marker([latitude, longitude], { icon: greenIcon }).on('click', function (e) {
var markeren = this;
debugger;
$.get(ol.url('~/Map/MapContent/'), {id: m.id }, function(data) {
L.popup()
.setLatLng(markeren.getLatLng())
.setContent(data)
.openOn(map);
});
}).addTo(map);
m.id = obj.Id;
console.log('Latitude: '+latitude + ' - Longitude: ' + longitude);
}