【发布时间】:2012-06-21 21:31:40
【问题描述】:
我正在使用 Google Fusion Tables 创建地图。它有几个层,根据选中的复选框显示或隐藏。
我创建了一些代码来打开/关闭图层,使用变量 (layer10on) 来跟踪每个图层 (layer10) 当前是否可见:
function toggleLayer10() {
if(layer10on) { layerl0.setOptions({map: null}); }
if(!layer10on) { layerl0.setOptions({map: map}); }
layer10on=!layer10on;
}
...
<input type="checkbox" checked onchange="toggleLayer10();" />
这可以正常工作,但我不想为每个复选框/图层复制此代码,因此我尝试传递选中复选框的参数以及与之相关的图层,但它不起作用:
function toggleLayer(layerToChange,checkboxID) {
if(!document.getElementById(checkboxID).checked) {
layerToChange.setOptions({map: null});
}
if(document.getElementById(checkboxID).checked) {
layerToChange.setOptions({map: map});
}
}
...
<input value="layer10" id="check10" type="checkbox" checked onchange="toggleLayer(this.value,this.id);" />
我已经有好几年没有做任何编码了,所以如果能帮助我知道哪里出错了,我将不胜感激。
谢谢,
尼古拉
【问题讨论】:
标签: javascript google-maps checkbox google-fusion-tables