Html checkBox onchange无法正常工作

isx*_*ker 7 html checkbox jquery onchange

<input class="jProblemClass" id="Checkbox{%= ID %}" type="checkbox" onchange="problemPicker.onChangeProblemCheckBox('{%=ID %}');"/>
Run Code Online (Sandbox Code Playgroud)

首先检查或取消选中后没有任何反应.Afetr第二次点击,调用我的功能problemPicker.onChangeProblemCheckBox,但我先得到ID检查.为什么?可以帮助我吗?

onChangeProblemCheckBox: function(id) {
    if ($('#CheckBox' + id).attr("checked") == true) {
        problemPicker.addToCheckProblems(id);

        var checkboxes = $('.jProblemClass:checked');

        if ((checkboxes.length > general.limit) && (general.limit != 0)) {
            alert('The limit of ' + general.limit + ' problems exceeded. Please deselect ' + (checkboxes.length - general.limit).toString() + '.');
        }
    } else {
        problemPicker.delFromCheckProblems(id);
    }
},
Run Code Online (Sandbox Code Playgroud)

Tam*_*ami 20

兄弟使用onclick事件,而不是平变化.. 原因......据JavaScript引用的我读过,聚焦后的onchange火灾损失.除非你点击其他地方,否则焦点不会在IE中丢失.其他浏览器一定不能等待焦点在触发更改之前丢失 - 这表明他们没有正确地遵循规范(尽管在这一点上更有意义).如何使用onclick和onkeydown/onkeyup(通过使用onclick和onkeyup/onkeydown,你可以覆盖复选框的鼠标和键盘设置).参考:http://www.winvistatips.com/re-onchange-event-checkbox-not-working-properly-t311364.html