首页 > 代码库 > 实现全选,反选

实现全选,反选

js ,jq实现全选,反选功能:

js:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        全选<input type="checkbox" name="allchoose" id="box" onclick="chk()"/>
        <div id="lower">
            苹果<input type="checkbox" name="apple" id="apple"/>
            香蕉<input type="checkbox" name= "banner" id="banner" />
            橘子<input type="checkbox" name="origin" id="origin"/>
        </div>
        
        <script type="text/javascript">
            var box = document.getElementById("box");
            var lb = document.getElementById("lower");
            var lber = lb.getElementsByTagName("input");
        //全选,反选
        box.onclick = function(){
            if(this.checked){
                for(var i=0;i<lber.length;i++){
                    lber[i].checked = true;
                }
            }else{
                for(var i=0;i<lber.length;i++){
                    lber[i].checked = false;
                }
            }
        }
        //下面全选后,全选框也勾上
        for(var i=0;i<lber.length;i++){
            lber[i].onclick = function(){
                //引入计数器sum
                var sum = 0;
                for(var j=0;j<lber.length;j++){
                    if(lber[j].checked){
                        sum += 1;
                        if(sum == lber.length){
                            box.checked = true;
                        } else {
                            box.checked = false;
                        }
                    }
                }
            }
        }
        </script>
    </body>
</html>

jq:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <input type="checkbox" value="http://www.mamicode.com/全选" id="ckAll"/>水果</br>
        <div class="box">
            <input type="checkbox" value="http://www.mamicode.com/苹果" id="apple"/>苹果
            <input type="checkbox" value="http://www.mamicode.com/香蕉" id="bann"/>香蕉
            <input type="checkbox" value="http://www.mamicode.com/橘子" id="origin"/>橘子
        </div>    
        <script src="http://www.mamicode.com/js/jquery-1.8.3.min.js"></script>
        <script type="text/javascript">
            $(‘#ckAll‘).click(function(){
                $(‘.box input‘).prop(‘checked‘,$(this).prop(‘checked‘));
            });
            $(‘.box input‘).click(function(){
                //each 便利每一个元素,让其执行该函数
                $(‘.box input‘).each(function(){
                    if(!$(this).prop(‘checked‘)){
                        $(‘#ckAll‘).prop(‘checked‘,false);
                        //有一个不满足就 跳出该循环,避免执行下面
                        return false;
                    }else{
                        $(‘#ckAll‘).prop(‘checked‘,true);
                    }
                })
            })            
        </script>
    </body>
</html>

 

实现全选,反选