Seit Tagen versuche ich mein Problem zu lösen.Wie kann man nur ein Feature/Polygon gleichzeitig mit Leaflet bearbeiten?
Ich habe eine Polygonschicht von einem GeoJSON. Ich möchte meine Polygone mit dem Klickereignis bearbeiten. Wenn ich auf ein Polygon klicke, wird es editierbar, aber was ich will ist, dass wenn ich auf ein anderes Polygon klicke, das erste Polygon nicht mehr im bearbeitbaren Modus ist.
OpenLayers aber natürlich nicht Leaflet.
Hier ist ein Auszug aus meinem Code:
var editableLayers = new L.FeatureGroup().addTo(map);
var polygon_json;
$.ajax({
type: "GET",
dataType: "json",
url: "get_json.php",
success: function (response) {
meaux_json = L.geoJson(response, {
onEachFeature: onEachFeature
});
}
});
//edit the targeted polygon
function onEachFeature (feature, layer) {
editableLayers.addLayer(layer);
layer.on('click', function(e){
e.target.editing.enable();
});
}
Eine Person in der Lage war, es zu tun, aber ich habe Schwierigkeiten zu verstehen, wie: https://github.com/dwilhelm89/Ethermap
Wenn ich in Ihrer Demo auf ein Polygon/eine Polylinie klicke, wird es editierbar. Wenn ich dann in der Demo auf ein anderes Poly klicke, wird die Bearbeitung des ersten Polygons deaktiviert, und das zweite Polygon wird zum Bearbeiten aktiviert. Es scheint, als ob es im Moment funktioniert, wie du willst. –
danke für die Antwort, aber es ist nicht meine Demo, es ist eine andere Person, die das nicht ich tat ^^, und ich weiß nicht wie. – Revocyl
Hey. Kannst du bitte deinen ganzen Code posten (einschließlich der Steuerelemente für die Verlosung von Flyern)? Ich versuche etwas Ähnliches zu tun, aber ich stecke fest. – user1919