我有一些jquery允许我限制用户可以在页面上检查的复选框数量:
$('input[type=checkbox]').on('change', function (e) {
if ($('input[type=checkbox]:checked').length > 3) {
$(this).prop('checked', false);
alert("allowed only 3");
}
});
但是,用户每天只能被限制为“x”号码。所以他们来到表格,提交他们的限制(3检查)。他们第二天回来了,我从昨天开始检查了3个但是设置为残疾人:
checked="checked" disabled="disabled" disabled/>
有没有办法修改我的if语句来说“input [type = checkbox]:checked”但是如果禁用或者不是,如果class =“disabled”,那么这些不计入每日限制吗?
答案 0 :(得分:2)
您可以使用jQuery not()
方法,如下所示。
$('input[type=checkbox]').on('change', function (e) {
if ($('input[type=checkbox]:checked').not(':disabled').length > 3) {
$(this).prop('checked', false);
alert("allowed only 3");
}
});
答案 1 :(得分:2)
您可以使用:enabled
$('input[type=checkbox]').on('change', function (e) {
if ($('input[type=checkbox]:enabled:checked').length > 3) {
$(this).prop('checked', false);
alert("allowed only 3");
}
});