GeoJSON'a bir tıklama olayını nasıl eklerim ki bu da tıklatıldığında bir Ajax işlevi yürütür. İçine baktım onEachFeature
ama bu geoJSON yüklendiğinde, tıklandığında değil, böylece bir ton ajax çağrıları yürütme yürütür!
GeoJSON'a bir tıklama olayını nasıl eklerim ki bu da tıklatıldığında bir Ajax işlevi yürütür. İçine baktım onEachFeature
ama bu geoJSON yüklendiğinde, tıklandığında değil, böylece bir ton ajax çağrıları yürütme yürütür!
Yanıtlar:
İle doğru yoldasın onEachFeature
.
Sadece her öğeye olay tıklaması bağlamak zorunda.
Aşağıya bakınız (test edilmiştir)
function whenClicked(e) {
// e = event
console.log(e);
// You can make your ajax call declaration here
//$.ajax(...
}
function onEachFeature(feature, layer) {
//bind click
layer.on({
click: whenClicked
});
}
geojson = L.geoJson(your_data, {
style: style,
onEachFeature: onEachFeature
}).addTo(map);
ThomasG77'nin versiyonundan biraz daha az kodla yapabilirsiniz:
function onEachFeature(feature, layer) {
//bind click
layer.on('click', function (e) {
// e = event
console.log(e);
// You can make your ajax call declaration here
//$.ajax(...
});
}
geojson = L.geoJson(your_data, {
style: style,
onEachFeature: onEachFeature
}).addTo(map);