每天一个效果 :(5)全选,全不选,反选

今天来写一个全选,全不选,反选的一个效果,还是先把html文件给大家(小声说,我之前好像发过)

    <form action="">
        <p><input type="checkbox" name="" id="" >尼古拉斯·赵四</p>
        <p><input type="checkbox" name="" id="">莱昂纳德·刘能</p>
        <p><input type="checkbox" name="" id="">约翰尼·宋小宝</p>
        <p><input type="checkbox" name="" id="" >布拉德·小沈阳</p>
    </form>
    <button>全选</button>
    <button>全不选</button>
    <button>反选</button>

二话不说,看效果

 直接分享一下思路,先选button按钮,和input。选出来之后,我们拿第一个按钮(全选)举例,添加一个点击事件,给事件里面一个循环,循环每一个input,将每一个input的checked都给true。当然,全不选按钮,也是一样,全都给false就行了,看效果,和代码

        let but = document.getElementsByTagName('button');
        let input = document.getElementsByTagName('input');
        //全选
        but[0].onclick = function(){
            for(let i = 0;i<input.length;i++){
             input[i].checked = true;
            }
        }
        //全不选
        but[1].onclick = function(){
            for(let i = 0;i<input.length;i++){
             input[i].checked = false;
            }
        }

 

剩下的就是反选了,反选,我们只需要加一个 取反(!)就行了,继续看效果和代码

        but[2].onclick = function(){
            for(let i = 0;i<input.length;i++){
             input[i].checked = !input[i].checked;
            }

最后也把总码给大家~ 

 

    <form action="">
        <p><input type="checkbox" name="" id="" >尼古拉斯·赵四</p>
        <p><input type="checkbox" name="" id="">莱昂纳德·刘能</p>
        <p><input type="checkbox" name="" id="">约翰尼·宋小宝</p>
        <p><input type="checkbox" name="" id="" >布拉德·小沈阳</p>
    </form>
    <button>全选</button>
    <button>全不选</button>
    <button>反选</button>
    <script>
        //选中三个形式:1.用户勾选    2.在标签上添加checked属性   3.js中,checked = true
        let but = document.getElementsByTagName('button');
        let input = document.getElementsByTagName('input');
        //全选
        but[0].onclick = function(){
            for(let i = 0;i<input.length;i++){
             input[i].checked = true;
            }
        }
        //全不选
        but[1].onclick = function(){
            for(let i = 0;i<input.length;i++){
             input[i].checked = false;
            }
        }
        //反选
        but[2].onclick = function(){
            for(let i = 0;i<input.length;i++){
             input[i].checked = !input[i].checked;
            }
        }

    </script>

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值