实现方法有2种,客户端实现和服务端实现 客户端实现 (1)脚本 < form id ="Form1" method ="post" runat ="server" > < asp:DataGrid id ="dgCheckBox" runat ="server" AutoGenerateColumns ="False" Width ="472px" > < Columns > < asp:TemplateColumn HeaderText ="<input type=checkbox id=CheckAll οnclick='javascript:SelAll()'> 全选/全取消" > < ItemTemplate > < asp:CheckBox id ="CheckBox1" runat ="server" ></ asp:CheckBox > </ ItemTemplate > </ asp:TemplateColumn > < asp:BoundColumn DataField ="LastName" HeaderText ="LastName" ></ asp:BoundColumn > < asp:BoundColumn DataField ="FirstName" HeaderText ="FirstName" ></ asp:BoundColumn > </ Columns > </ asp:DataGrid > </ form > (2)JavaScript < script language = " javascript " > function SelAll() { var RowCnt=<%=RowCount%>; var IsChk; IsChk = document.all.CheckAll.checked; for(j= 0;j<RowCnt+1;j ++ ) { if(typeof(document.all.dgCheckBox.rows(j).cells(0).children(0)) == "object") { document.all.dgCheckBox.rows(j).cells(0).children(0).checked = IsChk; } } } </ script > (3)代码 // 定义公共变量,保存数据的行数 public int RowCount; private void Page_Load( object sender, System.EventArgs e) { //页面初试化时进行数据绑定 if(!IsPostBack) DataGridDataBind(); } // 绑定数据 private void DataGridDataBind() {DataSet ds = new DataSet();/**//*添充数据*/RowCount = ds.Tables[0].Rows.Count;} 服务端实现 这个方法就是出发事件回到服务端,捉行查看 转载于:https://www.cnblogs.com/timsoft/articles/414611.html