本文介绍了Html checkBox onchange不工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
<input class="jProblemClass" id="Checkbox{%= ID %}" type="checkbox" onchange="problemPicker.onChangeProblemCheckBox('{%=ID %}');"/>
第一次检查或取消选中后,不会发生任何操作。 Afetr第二次点击,调用我的函数 problemPicker.onChangeProblemCheckBox
,但我得到ID首先检查。为什么?可以帮我任何人吗?
After first check or uncheck nothing happens. Afetr second click, call my function problemPicker.onChangeProblemCheckBox
, but i get ID first check. Why? Can help me anybody?
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);
}
},
推荐答案
Bro使用onclick事件而不是onchange ..
原因...
根据我读过的Javascript引用,onchange在
焦点丢失后触发。除非你点击别的地方,焦点不会丢失在IE。
其他浏览器不能等待焦点丢失之前
触发onchange - 这表明他们没有正确地遵循规范
(尽管在这一点上更有意义) 。如何使用
onclick和onkeydown / onkeyup(通过使用onclick和
onkeyup / onkeydown你覆盖了鼠标和键盘设置的
复选框)。
REFERENCE:
这篇关于Html checkBox onchange不工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!