我有以下功能,可以根据是否选中页面上的复选框为按钮添加/删除样式:
var checkboxes = $(".chkbx").change(function() {
var allIsChecked = checkboxes.length === checkboxes.filter(":checked").length;
all[0].checked = allIsChecked;
enableMyElement(checkboxes.filter(":checked").length > 0);
});
var all = $("#checkall").change(function() {
checkboxes.attr("checked",this.checked);
enableMyElement(this.checked);
});
function enableMyElement(b) {
$("#delBtn")[b?"removeClass":"addClass"]("dis");
}
现在,所有这一切都运行正常,但仅限于改变。我需要添加一个检查,是否在页面加载时检查了至少一个类 chkBx 的复选框。我正在考虑添加另一个函数,比如这个
function CheckForAnySelected() {
$(".chkbx").attr("checked").each(
function() {
// do something
}
);
...但它看起来不是一个好的解决方案......我当然不确定如何与我现有的代码集成。
答案 0 :(得分:2)
function CheckForAnySelected() {
if($(".chkbx").filter(":checked").size()>0)
{
return true; // atleast one is selected
}
else{
return false;
});
你可以像
一样使用它if(CheckForAnySelected())
{
//atleast one is checked
}
else
{
// none checked
}