我页面有两个gridView  都做了全选功能, 但问题来了,  就是点一个gridView 的全选  另外一个gridView  就同时被选中了请问应该怎么做到 一个gridView 的全选 只控制它自己的这个gridView 

解决方案 »

  1.   

    GridView 实现服务器端和客户端全选的两种方法http://dotnet.aspx.cc/article/a8efc285-f0b1-4f8f-8e73-2b7d8724a47c/read.aspx
      

  2.   

    基本思想就是只遍历某个GridView里的所有行,将其中的复选框设置为Checked=true。
      

  3.   

    .cbAll是控件全选的Checkbox的样式,.cbOne是每项的Checkbox的样式。如果有多个,设置两组不同的样式就可以了。function initList() {
        $(".cbAll").click(function() {
         selAll = selAll == true ? false : true;
            $(".cbOne").attr("checked", selAll);
        });
        $(".cbOne").click(function() {
            $(".cbAll").attr("checked", ($(".cbOne[checked]").length == $(".cbOne").length));
        });
    }
      

  4.   

    其实可以硬编码的在自己的gridview中循环Checkbox,不要在页面所有的checkbox
      

  5.   


    for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
            {
                CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
                if (CheckBox2.Checked == true)
                {
                    cbox.Checked = true;
                }
                else
                {
                    cbox.Checked = false;
                }
            }
      

  6.   

    http://www.cnblogs.com/chenping-987123/archive/2010/12/06/1897796.html
      

  7.   

    你可以将两个gridview放置在不同的div层中 你在用js遍历的时候制定遍历那个div里面的Checkbox就可以了。
      

  8.   

    在一个gridview上套个Id="div1"的div
           function CheckAll(c) {
               var check = document.getElementById('div1').getElementsByTagName("input");
               for (i = 0; i < check.length; i++) {
                   if (check[i].type == "checkbox") { 
                       check[i].checked = c.checked
                   } 
               }
           }
      

  9.   

    for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
            {
                CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
                if (CheckBox2.Checked == true)
                {
                    cbox.Checked = true;
                }
                else
                {
                    cbox.Checked = false;
                }
            }
      

  10.   

    不管几个gridview它都不影响啊,全选一般是在JS中
    function GetAllChecked(CheckAll) {
                var items = document.getElementsByTagName("input");
                for(i=0;i<items.length;i++)
                {
                    if(items[i].type=="checkbox")
                    {
                        items[i].checked=CheckAll.checked;
                    }
                }
            }
      

  11.   

     $(document).ready(function(){
           $("#btnDel").click(function(){
           if($("input[@type=checkbox]:checked").size()==0)
               {
                 alert('请选你要删除的选项');
                 return false;
               } 
                return confirm('你确实要删除吗?');
           });
    //全选
             $("#GridView1_ctl01_CheckBoxAll").click(function(){
                if($(this).attr("checked"))
                {
                 $(":checkbox").each(function(){
                 $(this).attr("checked",true);});
                }
                else
               {  
                $(":checkbox").each(function(){
                 $(this).attr("checked",false);});
                }
            });
              
            });
      

  12.   


    <head runat="server">
        <title>无标题页</title>
        <script type="text/javascript" src="jquery-1.3.2.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function(){
                $("#one").toggle(function(){
                    $("#GridView1").find(":check").each(function(){
                        $(this).attr("checked",true);
                    })
                },function(){
                    $("#GridView1").find(":check").each(function(){
                        $(this).attr("checked","");
                    })
                })
                $("#two").toggle(function(){
                    $("#GridView2").find(":check").each(function(){
                        $(this).attr("checked",true);
                    })
                },function(){
                    $("#GridView2").find(":check").each(function(){
                        $(this).attr("checked","");
                    })
                })
            })
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
                onrowdatabound="GridView1_RowDataBound">
            <Columns>
                <asp:TemplateField HeaderText="ID">
                <ItemTemplate><asp:CheckBox ID="CheckBox1" runat="server" Text='<%#Eval("ID") %>'></asp:CheckBox></ItemTemplate>
                </asp:TemplateField>
            </Columns>
            </asp:GridView>
            <asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" 
                onrowdatabound="GridView1_RowDataBound">
            <Columns>
                <asp:TemplateField HeaderText="ID">
                <ItemTemplate><asp:CheckBox ID="CheckBox1" runat="server" Text='<%#Eval("ID") %>'></asp:CheckBox></ItemTemplate>
                </asp:TemplateField>
            </Columns>
            </asp:GridView>
            <a href="#" id="one">第一个GridView全选</a>
            <a href="#" id="two">第二个GridView全选</a>
        </div>
        </form>
    </body>
      

  13.   

    $("#GridView1").find(":check").each(function(){
                        $(this).attr("checked",true);
                    })