示例4: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>

在這裏插入圖片描述

發佈了49 篇原創文章 · 獲贊 41 · 訪問量 9362
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章