【发布时间】:2014-06-25 08:26:25
【问题描述】:
基本上,我有一个表格,每个单元格都包含一个复选框。我希望能够通过单击单元格内的任意位置来勾选复选框并更改我所做的该单元格的颜色。
现在的问题是,当我勾选复选框然后取消勾选它时,该单元格没有恢复该单元格颜色,因为在取消勾选复选框时,它的单元格颜色应该恢复为白色。谁能帮我?非常感谢您的帮助。
这是我的小提琴http://jsfiddle.net/UcDMW/50/
$(function () {
$('table tr td').on('click', function (e) {
if (e.target.type == "checkbox") {
if ($(this).is(':checked')) {
$(this).attr('checked', false);
$(this).css('background-color', 'white');
} else {
$(this).attr('checked', true);
$(this).css('background-color', '#DFF0D8');
}
return;
} else {
if ($(this).find('input:checkbox').is(':checked')) {
$(this).css('background-color', 'white');
$(this).find('input:checkbox').attr('checked', false);
} else {
$(this).find('input:checkbox').attr('checked', true);
$(this).css('background-color', '#DFF0D8');
}
}
});
});
【问题讨论】:
-
它对我有用。我在 chrome 上试过了。
-
@BhushanKawadkar 特别点击复选框,您会注意到问题..
-
@BhushanKawadkar 选中复选框然后取消选中时无法正常工作,否则在单元格内单击时工作正常
-
代码可以像这样简单得多jsfiddle.net/UcDMW/55
标签: javascript jquery