jQuery实现的Checkbox“全选/全不选”

自己实现的checkbox的“全选/全不选”,只需要传入“全选/全不选”checkbox的id属性和行的checkbox的name属性即可

/**
 * 全选/全不选
 * 适用于上下两个“全选/全不选”(也可以只有一个“全选/全不选”)
 * 每行数据的checkbox的name也必须相同
 * 若有两个“全选/全不选”,他们的name属性必须相同,id不同
 */


/**
 * 全选/全不选
 * @param source 触发“全选/全不选”点击事件的复选框的id
 * @param itemName 栏目的name
 * @param other 另一个“全选/全不选”的复选框id
 */
function checkItems(source, itemName, other){
    $("#"+source).bind('click', function(){
        if(this.checked){
            $("input[name='" + itemName + "']").each(function(){
                this.checked = true;
            });
        } else {
            $("input[name='" + itemName + "']").each(function(){
                this.checked = false;
            });
        }
        if($("#"+other)){
            $("#"+other).attr("checked", this.checked);
        }
    });
}
/**
 * 若所有的行被选中,则全选也设置为选中状态
 * @param allName “全选/全不选”checkbox的name
 * @param subName 栏目的name
 */
function checkSelectAll(allName,subName){
    var i = 0,j = 0;
    $("input[name='" + subName + "']").each(function(){
        i++;
        if (this.checked) {
            j++;
        }
    });
    if(i == j){//所有的行被选中,设置全选为选中状态
        $("input[name='" + allName + "']").each(function(){
            this.checked = true;
        });
    } else {//不是所有的行被选中,设置全选为未选中状态
        $("input[name='" + allName + "']").each(function(){
            this.checked = false;
        });
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值