これは私のマップです , leaflet マップの removeLayer は一度だけ削除します (<\/SPAN>削除された画像 )そして画像で見てわかるように、マーカーは完璧に削除されますが、再度削除しようとすると動作しません! チェックは true ではありませんが、2回目は削除されませんでした こちらはチェックボックスから呼び出される関数です:<\/P>
<\/P>
function myFunction(id) {
var marker = [];
var checkBox = document.getElementById(id)
var lat = checkBox.name;
var lon = checkBox.value;
var RN = checkBox.className;
console.log(RN)
var pop_cont = `<img id="icon" src="sample.jpg" alt="shipPIC"\/><br><b>${RN}</b><br> 緯度 :${lat}<br>経度: ${lon}`
if (checkBox.checked == true) {
marker = L.marker([lat, lon]).addTo(map);
marker.setIcon(dish_icon);
marker.bindPopup(pop_cont).openPopup();
("checked")
} {
marker = L.marker([lat, lon])
var x_id = L.stamp(markers);
map.removeLayer(markers[id]);
console.log("NOOOOT Check");
}
}
<\/P>
なぜ removeLayer() は最初の一回は削除できるのに、再度そのレイヤーを追加して削除しようとすると removeLayer が動作しないのでしょうか?
どうもありがとうございます!