• jq checkbox的相关操作——全选、反选、获得所有选中的checkbox


    1、全选

    $("#btn1").click(function(){ 
    $("input[name='checkbox']").attr("checked","true"); 
    }) 

    2、取消全选(全不选)

    $("#btn2").click(function(){ 
    $("input[name='checkbox']").removeAttr("checked"); 
    }) 

    3、选中所有奇数

    $("#btn3").click(function(){ 
    $("input[name='checkbox']:odd").attr("checked","true"); 
    }) 

    4、选中所有偶数

    $("#btn6").click(function(){ 
    $("input[name='checkbox']:even").attr("checked","true"); 
    }) 

    5、反选

    $("#btn4").click(function(){ 
    $("input[name='checkbox']").each(function(){ 
    if($(this).attr("checked")) 
    { 
    $(this).removeAttr("checked"); 
    } 
    else 
    { 
    $(this).attr("checked","true"); 
    } 
    }) 
    }) 

    或者

    $("#invert").click(function(){
            $("#ruleMessage [name='delModuleID']:checkbox").each(function(i,o){
                $(o).attr("checked",!$(o).attr("checked"));
            });
        });

    6、获取选择项的值

    var aa=""; 
    $("#btn5").click(function(){ 
    $("input[name='checkbox']:checkbox:checked").each(function(){ 
    aa+=$(this).val() 
    }) 
    document.write(aa); 
    }) 
    }) 

    7、遍历选中项

    $("input[type=checkbox][checked]").each(function(){
     //由于复选框一般选中的是多个,所以可以循环输出 
     alert($(this).val()); 
    }); 

    8、例子

    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head runat="server"> 
    <title>无标题页</title> 
    <script src="js/jquery-1.6.min.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
    jQuery(function($){ 
    //全选 
    $("#btn1").click(function(){ 
    $("input[name='checkbox']").attr("checked","true"); 
    }) 
    //取消全选 
    $("#btn2").click(function(){ 
    $("input[name='checkbox']").removeAttr("checked"); 
    }) 
    //选中所有基数 
    $("#btn3").click(function(){ 
    $("input[name='checkbox']:even").attr("checked","true"); 
    }) 
    //选中所有偶数 
    $("#btn6").click(function(){ 
    $("input[name='checkbox']:odd").attr("checked","true"); 
    }) 
    //反选 
    $("#btn4").click(function(){ 
    $("input[name='checkbox']").each(function(){ 
    if($(this).attr("checked")) 
    { 
    $(this).removeAttr("checked"); 
    } 
    else 
    { 
    $(this).attr("checked","true"); 
    } 
    }) 
    }) 
    //或许选择项的值 
    var aa=""; 
    $("#btn5").click(function(){ 
    $("input[name='checkbox']:checkbox:checked").each(function(){ 
    aa+=$(this).val() 
    }) 
    document.write(aa); 
    }) 
    }) 
    </script> 
    </head> 
    <body> 
    <form id="form1" runat="server"> 
    <div> 
    <input type="button" id="btn1" value="全选"> 
    <input type="button" id="btn2" value="取消全选"> 
    <input type="button" id="btn3" value="选中所有奇数"> 
    <input type="button" id="btn6" value="选中所有偶数"> 
    <input type="button" id="btn4" value="反选"> 
    <input type="button" id="btn5" value="获得选中的所有值"> 
    <br> 
    <input type="checkbox" name="checkbox" value="checkbox1"> 
    checkbox1 
    <input type="checkbox" name="checkbox" value="checkbox2"> 
    checkbox2 
    <input type="checkbox" name="checkbox" value="checkbox3"> 
    checkbox3 
    <input type="checkbox" name="checkbox" value="checkbox4"> 
    checkbox4 
    <input type="checkbox" name="checkbox" value="checkbox5"> 
    checkbox5 
    <input type="checkbox" name="checkbox" value="checkbox6"> 
    checkbox6 
    <input type="checkbox" name="checkbox" value="checkbox7"> 
    checkbox7 
    <input type="checkbox" name="checkbox" value="checkbox8"> 
    checkbox8 
    </div> 
    </form> 
    </body> 
    </html> 

    JQuery实现全选功能(解决只能全选一次的问题)

    Step-1 : JS实现
    //全选、取消全选的事件  
    function selectAll(){ 
        console.log(1);
        console.log($("#checkall").prop("checked"));
        if ($("#checkall").prop("checked")) { 
            console.log(2);           
            $("input[type='checkbox'][name='checkedres']").prop("checked",true);//全选
        } else { 
            console.log(3);               
            $("input[type='checkbox'][name='checkedres']").prop("checked",false);  //取消全选     
        }  
    }  
    //子复选框的事件  
    function setSelectAll(){  
        //当没有选中某个子复选框时,SelectAll取消选中  
        if (!$("#checkedres").checked) {  
            $("#checkall").prop("checked", false);  
        }  
        var chsub = $("input[type='checkbox'][name='checkedres']").length; //获取subcheck的个数  
        var checkedsub = $("input[type='checkbox'][name='checkedres']:checked").length; //获取选中的subcheck的个数  
        if (checkedsub == chsub) {  
            $("#checkall").prop("checked", true);  
        }  
    }
    Step-2 : HTML实现
        //设置全选复选框
        <input id="checkall" name="checkall" type="checkbox" onclick="selectAll()"/>全选
        //设置子复选框
        <input id="checkedres" name="checkedres" type="checkbox" onclick="setSelectAll()"/>item 1
        <input id="checkedres" name="checkedres" type="checkbox" onclick="setSelectAll()"/>item 2
        <input id="checkedres" name="checkedres" type="checkbox" onclick="setSelectAll()"/>item 3
        <input id="checkedres" name="checkedres" type="checkbox" onclick="setSelectAll()"/>item 4
     
  • 相关阅读:
    Synchronized和Lock的实现原理和锁升级
    如何禁止CPU指令重排
    MESI缓存一致性
    归并排序
    强软弱虚四种引用和ThreadLocal内存泄露
    VINS-Mono代码分析与总结(完整版)
    IMU误差模型与校准
    小感
    K8S conul部署
    Centos Consul集群及Acl配置
  • 原文地址:https://www.cnblogs.com/TigerZhang-home/p/6955490.html
Copyright © 2020-2023  润新知