全选/全不选/反选【DOM】

演示效果:


代码实现:

1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
<html>
3
  <head>
4
    <title>check.html</title>
5
    
6
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
7
    <meta http-equiv="description" content="this is my page">
8
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
9
  </head>
10
  
11
  <body>
12
    选择您的爱好:
13
     <hr/>      
14
     <input type="checkbox" name="checkItems" value="全选/全不选"/>全选/全不选
15
     <br>                           
16
        <input type="checkbox" name="items" value="足球" />足球
17
        <input type="checkbox" name="items" value="篮球"/>篮球
18
        <input type="checkbox" name="items" value="游泳"/>游泳
19
        <input type="checkbox" name="items" value="唱歌"/>唱歌
20
        <br>
21
        <input type="button" name="checkall" id="checkall" value="全选" />    
22
        <input type="button" name="checkall" id="checkallNo" value="全不选" />
23
        <input type="button" name="checkall" id="check_revsern" value="反选" />
24
  </body>
25
  <script language="JavaScript">
26
        //******************************全选  
27
        //获取id=checkall的按钮对象,并添加onclick事件
28
        document.getElementById("checkall").onclick = checkall; //注意js里面onclick属性调用函数不需要带()带了纠错了。html中onclick需要带()
29
        //全选函数
30
        function checkall(){
31
            //获取所有的checkbox类型的复选框对象
32
            var items_nodes = document.getElementsByName("items");
33
            //遍历集合,并设置其checked属性为ture
34
            for(var i=0; i<items_nodes.length; i++){
35
                items_nodes[i].checked = true;
36
            }
37
        }
38
        //******************************全不选 
39
        //获取id=checkallNo的按钮对象,并添加onclick事件
40
        document.getElementById("checkallNo").onclick = checkallNo;
41
        //全不选函数
42
        function checkallNo(){
43
            //获取所有的checkbox类型的复选框对象
44
            var items_nodes = document.getElementsByName("items");
45
            //遍历集合,并设置其checked属性为false
46
            for(var i=0; i<items_nodes.length; i++){
47
                items_nodes[i].checked = false;
48
            }
49
        }
50
        //******************************反选  
51
        //获取id=check_revsern的按钮对象,并添加onclick事件
52
        document.getElementById("check_revsern").onclick = check_revsern;
53
        //反选函数
54
        function check_revsern(){
55
            //获取所有的checkbox类型的复选框对象
56
            var items_nodes = document.getElementsByName("items");
57
            //遍历集合
58
            for(var i=0; i<items_nodes.length; i++){
59
                if(items_nodes[i].checked == true){//判断每一个选项的checked值,如果为true,则改为false;如果为false,则改为true
60
                    items_nodes[i].checked = false;
61
                }else{
62
                    items_nodes[i].checked = true;
63
                }
64
            }
65
        }
66
        //******************************全选/全不选  
67
        //获取name属性为checkItems的复选按钮的复选框对象,并添加onclick事件
68
        document.getElementsByName("checkItems")[0].onclick = checkItems;
69
        function checkItems(){
70
            //判断该复选按钮的checked值,如果为true,则name属性值为items的复选框全选;否则,全不选
71
            if(this.checked == true){
72
                checkall();//调用全选函数
73
            }else{
74
                checkallNo();//调用全不选函数
75
            }
76
        }
77
    
78
    
79
  </script>
80
</html>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用JavaScript和HTML DOM实现全选全不选反选功能。以下是一个示例代码: HTML部分: ``` <!DOCTYPE html> <html> <head> <title>全选全不选反选</title> <script src="checkbox.js"></script> </head> <body> <form name="myForm"> <input type="checkbox" name="chk1" value="1">选项1<br> <input type="checkbox" name="chk2" value="2">选项2<br> <input type="checkbox" name="chk3" value="3">选项3<br> <input type="checkbox" name="chk4" value="4">选项4<br> <input type="button" value="全选" onclick="checkAll()"> <input type="button" value="全不选" onclick="uncheckAll()"> <input type="button" value="反选" onclick="reverseCheck()"> </form> </body> </html> ``` JavaScript部分: ``` function checkAll() { var checkboxes = document.getElementsByName("myForm"); for (var i = 0; i < checkboxes.length; i++) { checkboxes[i].checked = true; } } function uncheckAll() { var checkboxes = document.getElementsByName("myForm"); for (var i = 0; i < checkboxes.length; i++) { checkboxes[i].checked = false; } } function reverseCheck() { var checkboxes = document.getElementsByName("myForm"); for (var i = 0; i < checkboxes.length; i++) { checkboxes[i].checked = !checkboxes[i].checked; } } ``` 在以上示例代码中,首先创建了一个包含多个复选框和三个按钮的HTML表单。然后,使用JavaScript编写了三个函数,分别用于实现全选全不选反选功能。这些函数使用`getElementsByName()`方法来获取表单中的所有复选框,并使用循环来设置复选框的选中状态。其中,`checkAll()`函数将所有复选框设置为选中状态,`uncheckAll()`函数将所有复选框设置为未选中状态,`reverseCheck()`函数将所有复选框的选中状态取反。最后,将这些函数绑定到HTML表单中的按钮上,当用户单击这些按钮时,就可以实现全选全不选反选功能
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值