jQuery全选、反选、全不选

本文介绍了一种使用HTML、CSS和JavaScript实现全选、全不选及反选功能的方法。通过简单的用户界面,可以方便地对列表项进行操作。文章提供了完整的代码示例,包括如何使用jQuery简化DOM操作。

原文链接:https://yq.aliyun.com/articles/33443

HTML内容部分:

<ul id="items">
            <li>
                <label><input type="checkbox" />item1</label>
            </li>
            <li>
                <label><input type="checkbox" />item2</label>
            </li>
            <li>
                <label><input type="checkbox" />item3</label>
            </li>
            <li>
                <label><input type="checkbox" />item4</label>
            </li>
            <li>
                <label><input type="checkbox" />item5</label>
            </li>
            <li>
                <label><input type="checkbox" />item6</label>
            </li>
            <li>
                <label><input type="checkbox" />item7</label>
            </li>
            <li>
                <label><input type="checkbox" />item8</label>
            </li>
        </ul>
        <p id="selection">
            <label><input type="checkbox" class="select-all" />全选</label>
            <label><input type="checkbox" class="select-none" />全不选</label>
            <label><input type="checkbox" class="select-reverse" />反选</label>
            <label><input type="checkbox" class="switch" />全选/全不选</label>
        </p>

CSS部分:

#items{
            list-style: square;
        }
        #items li{
            margin-bottom: 20px;
        }
        #selection{
            margin-top: 50px;
        }
        #selection label{
            margin-right: 30px;
        }

Javascript部分:

$(document).ready(function(){
            //全选
            $(".select-all").click(function(){
                $("#items input").prop("checked",true);
                $(".select-none,.select-reverse,.switch").prop("checked",false);
            });
            //全不选
            $(".select-none").click(function(){
                $("#items input,.select-all,.select-reverse,.switch").prop("checked",false);
            });
            //反选
            $(".select-reverse").click(function(){
                //使用each()方法规定每个匹配元素规定运行的事件
                $("#items input").each(function(){
                    $(this).prop("checked",!$(this).prop("checked"));
                    $(".select-all,.select-none,.switch").prop("checked",false);
                })
            });
            //全选/全不选
            $(".switch").click(function(){
                //使用is()方法来遍历input元素,根据选择器、元素或jQuery对象来检测匹配元素集合,如果这些元素中至少有一个元素匹配给定的参数,则返回true。
         //问号代表判断,冒号代表否则……
         //如果$("#items input").is(":checked")为真或不等于0

         //那么返回$("#items input").prop("checked",false)否则返回$("#items input").prop("checked",true)
         
$("#items input").is(":checked")?$("#items input").prop("checked",false):$("#items input").prop("checked",true);
         $(".select-all,.select-none,.select-reverse").prop("checked",false);
 }); })

 

转载于:https://www.cnblogs.com/wangyeye14/p/6163573.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值