页面上放了一个Gridview控件,第一列用的是CheckBox 我想实现选一个全选按钮 就都选上的效果 然后删除一起删除 还有正选 反选 希望高手们贴出代码 或者发我邮箱[email protected]  或[email protected] 感激不尽

解决方案 »

  1.   

    去51下吧。http://www.51aspx.com/
      

  2.   


    <script>
    function SelectAll(id)
    {
        var gv = document.getElementById("GridView1");
        var bs = gv.getElementsByTagName("input");
        for(var i=0;i<bs.length;i++)
        {
            if(bs[i].type=="checkbox")
            {
                bs[i].checked=id.checked;
               
            }
        }
    }
    </script>//调用
     <asp:GridView ID="GridView1" runat="server" >
                <Columns>
                    <asp:TemplateField HeaderText="全选">
                        <HeaderTemplate>
                            <asp:CheckBox ID="CheckBox1" runat="server" onclick="javascript:SelectAll(this);"/>
                        </HeaderTemplate>
                        <ItemTemplate>
                            <asp:CheckBox ID="CheckBox2" runat="server" />
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>
      

  3.   


     <asp:GridView ID="GridView1" runat="server" >
                <Columns>
                    <asp:TemplateField HeaderText="全选">
                        <HeaderTemplate>
                            <asp:CheckBox ID="CheckBox1" runat="server" oncheckedchanged="CheckBox1_CheckedChanged" />
                        </HeaderTemplate>
                        <ItemTemplate>
                            <asp:CheckBox ID="CheckBox2" runat="server" />
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>
       protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
            {
                Checkbox cbAll = sender as Checkbox;
                for (int i = 0; i < GridView1.Rows.Count; i++)
                {
                    Checkbox cb = (Checkbox)GridView1.Rows[i].FindControl("CheckBox2");
                    cb.Checked = cbAll.Checked;
                }
            }
    //PS:这是后台实现的,我个人还是推荐用JS实现全选的方法,顶2L
      

  4.   

    3L的    <asp:CheckBox ID="CheckBox1" runat="server" oncheckedchanged="CheckBox1_CheckedChanged" autopostback="true" />
      

  5.   

    复选框全选
    <script language="javascript" type="text/javascript">
            function selectAll(chkbox)
            {   var box = chkbox;
            oState = box.checked;
            elem = box.form.elements;
            for(i = 0; i < elem.length; i ++)
            {
            if(elem[i].type == "checkbox" && elem[i].id != box.id)
            {
            if(elem[i].checked != oState)
            {
            elem[i].click();
            }
            }
            }
            } 
    </script><asp:CheckBox ID="chkAll" runat="server" onclick="selectAll(this);" Text="全选" />后台读取操作
     protected void lbtnDel_Click(object sender, EventArgs e)
        {
            bool state = false;
            CheckBox chb;
            int row = gvNews.Rows.Count;
            for (int i = 0; i < row; i++)
            {
                chb = (CheckBox)gvNews.Rows[i].Cells[0].FindControl("chkDel");
                if (chb.Checked == true)
                {                
                    int NewId = Convert.ToInt32(gvNews.DataKeys[i].Value);             
                    cManager.Delete(NewId);//删除选择项
                    state = true;
                }
            }
            if (state == true)
            {
                Utility.Show(Page, "删除成功!");
             }
            else
            {
                Utility.Show(Page, "请选择删除项!");
            }
        }