在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、
但是这个只能在当前页实现全选择及反选功能,有翻页的情况就不行。