用Javascript实现checkbox全选、全不选

用Javascript实现checkbox全选、全不选


第一篇博客…写了一个小东西实现checkbox全选、全不选,还有可以改进的地方。

Javascript:

window.onload=function(){
//方法一:
    var selectOrNo = false;
    var allSelectDiv = document.getElementById("allSelect");
    allSelectDiv.onclick = function(){selectAll(selectOrNo);};
    function selectAll(select)
    {
        selectOrNo = !select;
        var allCheckBox = document.all['checkBox'];
        if(allCheckBox.length)
        {
            for(var i=0; i < allCheckBox.length; i++)
            {
                allCheckBox[i].checked = selectOrNo;
            }
        }else allCheckBox.checked = selectOrNo;
    }
//方法二:
    var allSelectDiv2 = document.getElementById("allSelect2");
    var selectOrNone = false;
    var alreadyAllSelect = false;
    allSelectDiv2.onclick = function(){allSelect(selectOrNone,alreadyAllSelect);};
    function allSelect(selectOrNone,alreadyAllSelect)
    {
        var allCheckBox = document.all['checkBox'];
        if(allCheckBox.length)
        {
            for(var i=0; i < allCheckBox.length; i++)
            {
                if(!selectOrNone && !alreadyAllSelect)
                {
                    if(!allCheckBox[i].checked)
                    {//如果有没选中的,执行全选操作
                        allSelect(!selectOrNone,alreadyAllSelect);
                        break;
                    }else if( i==allCheckBox.length-1 && allCheckBox[i].checked)
                    {//如果全都选中了,那么执行全不选操作
                        allSelect(!selectOrNone,!alreadyAllSelect);
                    }
                }else if(selectOrNone && !alreadyAllSelect )
                {//全选
                    allCheckBox[i].checked = true;
                }else
                {//全不选
                    allCheckBox[i].checked = false;
                }                   
            }
        }else allCheckBox.checked = true;
    }
};
  <div id="allSelect"><span>全选</span></div>
  <input name="checkBox" type="checkbox" value="1" />
  <input name="checkBox" type="checkbox" value="2" />
  <input name="checkBox" type="checkbox" value="3" />
  <div id="allSelect2"><span>全选2</span></div>

点击全选DIV即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值