当选中一个复选框时,我试图更改一个元素的 CSS 类并显示另一个元素。 目前我的代码非常不干燥,并重复以下操作,将 0 更改为 1、2、3 等。
$("#form-0").hide();
$('#checkbox-0').click(function () {
$("#form-0").toggle(this.checked);
$("#div-0").toggleClass("new_class")
});
它与我冗长的代码配合得很好;但是,当我尝试使用 for 循环进行迭代时,它会中断。没有错误,但元素未显示且类未更改。
for (var i=0; i <= 10; i++) {
$("#form-"+i).hide();
$('#checkbox-'+i).click(function () {
$("#form-"+i).toggle(this.checked);
$("#div-"+i).toggleClass("new_class")
});
};
我是 JQuery 和 Javascript 的新手,我确信我错过了一些简单的东西。有什么建议吗?
最佳答案
如果您尝试这样做会怎样:
像这样更改元素的 html:
<input type="checkbox" id="checkbox-0" class="MYCHECKBOX" />
然后像这样浏览它们:
$for (var i=0; i <= 10; i++) {
$("#form-"+i).hide();
}
$('.MYCHECKBOX').each(function(index, element) {
$(element).click(function () {
$("#form-"+index).toggle(this.checked);
$("#div-"+index).toggleClass("new_class")
});
});
关于javascript - JQuery 更改类并在选中复选框时显示 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23575146/