首页 > 代码库 > 全选与反选(dom与jquery比较)

全选与反选(dom与jquery比较)

<html><head>    <title>全选或反选(dom)</title>    <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>        <script>                var divCheckbox;        function init(){            var allCheckbox = document.getElementById("allId");            allCheckbox.onclick = allOnClick;                        var reservseCheckbox = document.getElementById("reservseId");            reservseCheckbox.onclick = reservseOnClick;                        divCheckbox = document.getElementById("divId").getElementsByTagName("input");        }                function allOnClick(){            for(var i = 0,len = divCheckbox.length;i < len;i ++){                divCheckbox[i].checked = this.checked;            }        }                function reservseOnClick(){            for(var i = 0,len = divCheckbox.length;i < len;i ++){                divCheckbox[i].checked = !divCheckbox[i].checked;            }        }        window.onload =init;    </script></head>    <body>        <input id="allId" type="checkbox" />全选        <input id="reservseId" type="checkbox" />反选        <div id="divId">            <input type="checkbox" />足球            <input type="checkbox" />乒乓球            <input type="checkbox" />羽毛球            <input type="checkbox" />网球            <input type="checkbox" />棒球            <input type="checkbox" />篮球            <input type="checkbox" />全选        </div>    </body></html>

 

 

 

<html><head>    <title>全选或反选(jQuery)</title>    <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>    <script src="http://code.jquery.com/jquery-1.10.2.js"></script>    <script>        $(function(){            var $divCheckbox = $(#divId > input);            var $allCheckbox = $(#allId);            $allCheckbox.click(function(){                //这里不要使用attr,因为jQuery在1.6之后attr就某些时候不能够工作了。                //若使用attr,则在第一次可以看见效果,之后都无效!                $divCheckbox.prop("checked",this.checked);            });            var $reservseCheckbox = $(#reservseId);            $reservseCheckbox.click(function(){                $divCheckbox.each(function(index,element){                    element.checked = !element.checked;                });            });        });    </script></head>    <body>        <input id="allId" type="checkbox" />全选        <input id="reservseId" type="checkbox" />反选        <div id="divId">            <input type="checkbox" />足球            <input type="checkbox" />乒乓球            <input type="checkbox" />羽毛球            <input type="checkbox" />网球            <input type="checkbox" />棒球            <input type="checkbox" />篮球            <input type="checkbox" />全选        </div>    </body></html>