现在的位置: 首页 > 综合 > 正文

实现gridview当前面全选及反选

2013年12月07日 ⁄ 综合 ⁄ 共 1092字 ⁄ 字号 评论关闭

在xx.aspx网页的gridView中加入一模板:

                <asp:TemplateField HeaderText="全选">
                    <HeaderTemplate>
                        <asp:CheckBox ID="CheckBox2" runat="server" AutoPostBack="True" Text="全选" OnCheckedChanged="onClick" />
                    </HeaderTemplate>

                    <ItemTemplate>
                        <asp:CheckBox ID="CheckBox1" runat="server" />
                    </ItemTemplate>
                </asp:TemplateField>

在上面的CheckBox2中的OnCheckedChanged会触发onClick。

在xx.aspx.cs代码如下:

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

public partial class tt : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    public void onClick(object sender, System.EventArgs ea)
    {
        CheckBox cb = (CheckBox)sender;

        if (cb.Text == "全选")
        {
            foreach (GridViewRow gv in this.GridView1.Rows)
            {
                CheckBox cd = (CheckBox)gv.FindControl("CheckBox1");
                cd.Checked = cb.Checked;
                cb.Text = "反选";
            }
        }
        else
        {
            cb.Text = "反选";
            foreach (GridViewRow gv in this.GridView1.Rows)
            {
                CheckBox cd = (CheckBox)gv.FindControl("CheckBox1");
                cd.Checked = cb.Checked;
                cb.Text = "全选";
            }

        }
    }

}

 

效果图如下:

1、   2、

但是这个只能在当前页实现全选择及反选功能,有翻页的情况就不行。

抱歉!评论已关闭.