Javascript 如何在控件中取消选中图层时关闭模式窗口
我有一个模式窗口,当用户从菜单中检查图层时会弹出。用户可以通过按下窗口上的“X”图标或单击地图来关闭此模式窗口但是,当用户从菜单中取消选中图层时,模式将再次弹出。 我需要帮助编写代码,这样当用户从菜单中取消选中图层时,模式就不会再次弹出 注:我使用传单的地图和引导模式 这是我的假设代码: 模式的HTML:Javascript 如何在控件中取消选中图层时关闭模式窗口,javascript,leaflet,Javascript,Leaflet,我有一个模式窗口,当用户从菜单中检查图层时会弹出。用户可以通过按下窗口上的“X”图标或单击地图来关闭此模式窗口但是,当用户从菜单中取消选中图层时,模式将再次弹出。 我需要帮助编写代码,这样当用户从菜单中取消选中图层时,模式就不会再次弹出 注:我使用传单的地图和引导模式 这是我的假设代码: 模式的HTML: <div id="myRouteModal">blah blah</div> JS: 您的代码: switch(layerClicked){ case "my
<div id="myRouteModal">blah blah</div>
JS:
您的代码:
switch(layerClicked){
case "myRoute": toggleLayer(this.checked, myRoute);
$('myRouteModal').modal(modalOptions);
您可以调用$('myRouteModal').modal(modalOptions)代码>每次。相反,如果选中了单击的复选框,则必须进行测试。仅当复选框为check时,才应调用.modal()
-函数
正确的代码是:
case "myRoute": toggleLayer(this.checked, myRoute);
if(this.checked) {
$('myRouteModal').modal(modalOptions);
}
break;
你介意举个例子吗?在我这一方不能完全发挥作用。
function toggleLayer(checked, layer){
if(checked){
map.addLayer(layer);
} else {
map.removeLayer(layer);
}
}
$(".check").change(function(){
var layerClicked = $(this).attr("id");
//Turn layers on and off based on the ID of the radio checked
switch(layerClicked){
case "myRoute": toggleLayer(this.checked, myRoute);
$('myRouteModal').modal(modalOptions);
break;
...and other layers ...
}
});
switch(layerClicked){
case "myRoute": toggleLayer(this.checked, myRoute);
$('myRouteModal').modal(modalOptions);
case "myRoute": toggleLayer(this.checked, myRoute);
if(this.checked) {
$('myRouteModal').modal(modalOptions);
}
break;