checkbox全选和反选以及取消

很多网站页面上面经常可以看到,在每一条记录的前面会有一个一个选择框,下面这个例子实现了一键完成全选,一键完成反选,一键完成取消。

<!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="UTF-8">
            <title>Title</title>
            <style>
                .hide{
                    display: none;
                }
                .c1{
                    position:fixed;
                    left: 0;
                    top:0;
                    right:0;
                    bottom:0;
                    background-color:black;
                    opacity:0.6;
                    z-index:9;
                }
                .c2{
                    width:500px;
                    height:400px;
                    background-color:white;
                    position: fixed;
                    left: 50%;
                    top:50%;
                    margin-left:-250px;
                    margin-top:-200px;
                    z-index:10;
                }
            </style>
        </head>
        <body style="margin: 0;">
            <div>
                <input type="button" value="添加" οnclick="show();"/>
                <input type="button" value="全选" οnclick="chooseAll();"/>
                <input type="button" value="取消" οnclick="cancelAll();"/>
                <input type="button" value="反选" οnclick="reverseAll();"/>
                <table>
                    <thread>
                        <tr>
                            <th>选择</th>
                            <th>主机名</th>
                            <th>端口</th>
                        </tr>
                    </thread>
                    <tbody id='tb'>
                        <tr>
                            <td><input type="checkbox" /></td>
                            <td>1.1.1.1</td>
                            <td>90</td>
                        </tr>
                        <tr>
                            <td><input type="checkbox" /></td>
                            <td>1.1.1.2</td>
                            <td>91</td>
                        </tr>
                        <tr>
                            <td><input type="checkbox" /></td>
                            <td>1.1.1.3</td>
                            <td>92</td>
                        </tr>
                    </tbody>
                </table>
            </div>

            <!--遮罩层开始-->
            <div id='i1' class='c1 hide'></div>
            <!--遮罩层结束-->

            <!--弹出框开始-->
            <div id='i2' class="c2 hide">
                <p><input type="text" /></p>
                <p><input type="text" /></p>
                <p>
                    <input type="button" value="cancel" οnclick="hide();"/>
                    <input type="button" value="sure"/>
                </p>
            </div>
            <!--弹出框结束-->

            <script>
                function show(){
                    document.getElementById('i1').classList.remove('hide');
                    document.getElementById('i2').classList.remove('hide');
                }

                function hide(){
                    document.getElementById('i1').classList.add('hide');
                    document.getElementById('i2').classList.add('hide');
                }
                function chooseAll(){
                    var tbody = document.getElementById('tb');
                    //获取所有的tr
                    var tr_list = tbody.children;
                    //循环所有的tr
                    for(var i=0; i<tr_list.length; i++){
                        var current_tr = tr_list[i];
                        var checkbox = current_tr.children[0].children[0];
                        checkbox.checked = true;
                    }
                }
                function cancelAll(){
                    var tbody = document.getElementById('tb');
                    //获取所有的tr
                    var tr_list = tbody.children;
                    //循环所有的tr
                    for(var i=0; i<tr_list.length; i++){
                        var current_tr = tr_list[i];
                        var checkbox = current_tr.children[0].children[0];
                        checkbox.checked = false;
                    }
                }
                function reverseAll(){
                    var tbody = document.getElementById('tb');
                    //获取所有的tr
                    var tr_list = tbody.children;
                    //循环所有的tr
                    for(var i=0; i<tr_list.length; i++){
                        var current_tr = tr_list[i];
                        var checkbox = current_tr.children[0].children[0];
                        if(checkbox.checked){
                            checkbox.checked = false;
                        }else{
                            checkbox.checked = true;
                        }
                    }
                }
            </script>
        </body>
    </html>

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值