【发布时间】:2017-04-04 15:52:20
【问题描述】:
在我的代码中,我在这里的复选框上设置了一个更改监听器
$(".section").change(function() {
if($(this).is(":checked")) {
$("." + this.id).show();
...
现在我正在尝试对复选框进行“代码驱动”点击,我有
$(".secTitle").click(function(e) {
var elem = this;
while(elem) {
if (elem.className && elem.className.indexOf ('DOC_SECTION') != -1) {
var clzes = elem.className.split(" ");
var clzIdx = 1;
if (elem.getAttribute('closeSecClassIdx')) {
clzIdx = parseInt(elem.getAttribute('closeSecClassIdx'));
}
var chk = document.getElementById(clzes[clzIdx]);
chk.checked = false;
alert(chk.onchange);
//chk.changed();
break;
}
else {
elem = elem.parentNode;
}
}
});
我知道我有正确的元素,因为chk.checked = false; 工作正常。之后,我尝试调用之前设置的更改方法,但我的警报显示为“未定义”。
【问题讨论】:
-
当你绑定事件回调到
onchange时,jQuery 不会插入任何东西! -
你必须触发
change事件:stackoverflow.com/questions/2490825/…
标签: javascript jquery html dom-events