全选与反选(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>

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

时间: 2024-10-01 07:18:49

全选与反选(dom与jquery比较)的相关文章

jquery checkbox全选,全不选,反选方法,jquery checkbox全选只能操作一次

jquery checkbox全选,全不选,反选方法, jquery checkbox全选只能操作一次, jquery checkbox全选只有第一次成功 Js代码  下载 /** * 全选 * 对于Jquey1.7.2+版本,使用attr会造成只能操作一次. * 对于HTML元素本身就带有的固有属性,在处理时,使用prop方法. * 对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法. * @param checkName */ function checkAll(chec

Jquery 全选、反选问题解析

最近工作中,需要使用Jquery实现复选框的全选和反选,本人虽然不是专职撸前端的,但这个小问题感觉也没什么难度,下面直接上代码: <div id="list"> <ul class="mui-table-view textOverflow" id="notesList" > <li><input type="checkbox" name="notices" valu

jquery checkbox的相关操作——全选、反选、获得所有选中的checkbox

jquery checkbox的相关操作——全选.反选.获得所有选中的checkbox 1.全选 $("#btn1").click(function(){ $("input[name='checkbox']").attr("checked","true"); }) 2.取消全选(全不选) $("#btn2").click(function(){ $("input[name='checkbox']&

jQuery 全选与反选时出现的bug!

今天在写项目,使用jQuery1.10.2 发现一个小小的bug, 在设置checked属性时,前两次反选的时候是正常的,后面均不正确,通过调试, 准确的说应该是只有第一次是正确的,在第二次单击时,事件快完成的时候的运行的流程有点奇怪.所以自己感觉这么 成熟的框架不应该出现这个问题,于是又将1.11.1版本下载下来,也是jQuery1的最新版本测试,同样末果,问题依 然存在,使用标准的document.getElementById, 直接设置值是没有问题的. 我本人根据测试,应该是jQuery的

利用JQuery实现全选和反选的几种方法

前面介绍了利用JavaScript实现全选功能,其中也有要注意的几点,现在讲解下在JQuery怎么实现全选和反选,下面提供了两种方法实现. 如图:要实现的效果是点击全选框全部选中,再点击全部不选中 方法一思路:1.导入jQuery库,这个网上可以下载,是免费开源的,2.设置class为fruit,通过prop设置它们的属性. 方法一:jQuery代码: 1 //定义标识,true表示选中 2 var chkall = true; 3 $(function () { 4 //全选按钮设置点击事件

jQuery实现的全选、反选和不选功能

适用于网页多选后需要进行批量操作的场景(如批量删除等).如有问题希望大家可以指正.谢谢~~ HTML 我们的页面上有一个歌曲列表,列出多行歌曲名称,并匹配复选框供用户选择,并且在列表下方有一排操作按钮 <ul id="list"> <li><label><input type="checkbox" value="1"> 1.时间都去哪儿了</label></li> <l

jQuery全选与反选,且解决点击只执行一次的问题

<html> <head> <script src="jquery-1.11.1.min.js" type="text/javascript"></script> </head> <body> <input type="checkbox" name="chk_list[]" value="1" />1 <input t

jQuery实现复选框的全选、反选、并且根据复选框的&lt;checked属性&gt;控制多个对应div的显示/隐藏

<!doctype html><html> <head> <meta charset="utf-8"> <title>jQuery实现复选框的全选.反选.并且根据复选框的(checked属性)控制多个对应div的显示/隐藏</title> <script type="text/javascript" src="jquery-1.11.3.min.js"></

jquery全选、反选、全不选

jquery全选.反选.全不选简单实现 Jquery代码 !function ($) { //全选 反选 全不选 $("#selAll").click(function () { $(".lists :checkbox").not(':disabled').prop("checked", true); }); $("#unSelAll").click(function () { $(".lists :checkbox