【HTML】实现表格全选反选与取消操作

编程入门 行业动态 更新时间:2024-10-08 00:32:29

【HTML】实现表格<a href=https://www.elefans.com/category/jswz/34/1768526.html style=全选反选与取消操作"/>

【HTML】实现表格全选反选与取消操作

 

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8">

        <title>全选反选删除操作</title>

        <style>

            /* 表格边框样式 */

            table {

                border: 1px solid black;

                width: 400px;

                border-collapse: collapse;

                text-align: center;

            }

            table td

            {

                width: 50px;

                height: 50px;

                border: 1px solid black;

            }

       

            table div{

                border: 5px solid black;

            }

            #box1{

            margin: 0 auto;

            }

            #box2{

                width: 400px;

                height: 40px;

                margin: 0 auto;

            }

            .box3{

                height: 40px;

                width: 40px;

                border: 1px solid black;

            }

        </style>

    </head>

    <body>

        <table id="box1">

       

            <div id="box">

           

                <tr>

                    <div>

                    <td class="box4"><input type="checkbox" name="email"style="height: 20px;" style="width: 20px;"></td>

                    </div>

                    <td >111</td>

                    <td >111</td>

           

                </tr>

                <tr>

                    <td class="box4"><input type="checkbox" name="email" style="height: 20px;" style="width: 20px;"></td>

                    <td class="box3">222</td>

                    <td class="box3">222</td>

               

                </tr>

                <tr>

                    <td class="box4"><input type="checkbox" name="email" style="height: 20px;" style="width: 20px;"></td>

                    <td class="box3">333</td>

                    <td class="box3">333</td>

                   

                </tr>

           

        </div>

           

                <div id="box2">

                    <button type="button" οnclick="selBtn(1)" style="height: 30px;" style="width: 100px;">全选</button>

                    <button type="button" οnclick="selBtn(0)" style="height: 30px;" style="width: 100px;">取消全选</button>

                    <button type="button" οnclick="selBtn(2)" style="height: 30px;" style="width: 100px;">反选</button>

               </div>

        </table>

        <script>

            /* 全选框全选和取消全选 */

            function selectAll(sel){

                //让所有的选择框与当前选择框选择状态样即可

                let emails = document.getElementsByName("email");

                for (let email of emails) {

                    email.checked = sel.checked;

                }

                let sels = document.getElementsByName("selAll");

                for (let selAll of sels) {

                    selAll.checked = sel.checked;

                }

            }

            /* 全选反选取消全选按钮 */

            function selBtn(flag){

               

                if(flag>1){

                    //大于0反选,等于自己本身选择状态取反

                    let emails = document.getElementsByName("email");

                    for (let email of emails) {

                        email.checked = !email.checked;

                    }

                }else{

                    //为0和1时直接赋给状态,js中0为false,除0外都为true

                    let emails = document.getElementsByName("email");

                    for (let email of emails) {

                        email.checked = flag;

                    }

                    let sels = document.getElementsByName("selAll");

                    for (let selAll of sels) {

                        selAll.checked = flag;

                    }

                }

            }

            //删除所选

            function delSel(){

                //遍历删除选中即可,找到tr的父节点删除tr

                let emails = document.getElementsByName("email");

                for (let i=0;i<emails.length;i++) {

                    if(emails[i].checked){

                        emails[i].parentNode.parentNode.parentNode.removeChild(emails[i].parentNode.parentNode);

                        i--;

                    }

                }

            }

        </script>

    </body>

</html>

更多推荐

【HTML】实现表格全选反选与取消操作

本文发布于:2024-02-28 06:31:39,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1768531.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:全选   表格   操作   HTML

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!