0

我浏览了许多“意外令牌”、“非法”等主题,其中一个通过检查不可见字符并将脚本复制到 jslint 来帮助我,这给我带来了一些遗漏括号的错误,但这一行仍然存在一个问题:

JS:

document.getElementById('pois').innerHTML =('<p><label><input type="checkbox" id="01" onclick="toggleGroup("01")" CHECKED/></label>01</p>');

pois div 位于 html 文件中。

或者,我将如何用 jQuery 编写上述行,因为内联 JS 不被认为是正确的?以下功能无法按我的意愿工作:

$("#01").click(function() {
    toggleGroup();
});

对应功能:

var markerGroups = { "01": [], "02": [] , "03": [] , "04": [] };
function toggleGroup(id_category) {
    for (var i = 0; i < markerGroups[id_category].length; i++) {
    var marker = markerGroups[id_category][i];
    if (marker.getMap()) {
        marker.setMap(null);
    } else {
        marker.setMap(map);
       }
    } 
}
4

2 回答 2

0

}引发的错误是因为您在函数末尾错过了一个括号

function toggleGroup(id_category) {
    for (var i = 0; i < markerGroups[id_category].length; i++) {
    var marker = markerGroups[id_category][i];
    if (marker.getMap()) {
        marker.setMap(null);
    } else {
        marker.setMap(map);
   }
    }
} //<== missing one

http://jsfiddle.net/QF9sN/5/

于 2013-08-13T16:51:40.927 回答
0

也许您需要更改onclickonchange? 这将捕获复选框更改事件。我不太确定 toggleGroup 功能在做什么,但这可能会有所帮助。

于 2013-08-13T16:09:29.060 回答