1.DataGrid 批量更新 在html的form中设置如下的DataGrid < asp:DataGrid id ="DataGrid1" style ="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 32px" runat ="server" Width ="912px" Height ="136px" AutoGenerateColumns ="False" > < Columns > < asp:TemplateColumn HeaderText ="ID" > < ItemTemplate > < asp:Label id =Label1 runat ="server" Text ='<%# DataBinder.Eval(Container, "DataItem.id") % > '> </ asp:Label > </ ItemTemplate > </ asp:TemplateColumn > < asp:TemplateColumn HeaderText ="用户名" > < ItemTemplate > < asp:TextBox id =TextBox1 runat ="server" Text ='<%# DataBinder.Eval(Container, "DataItem.uname") % > '> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateColumn > < asp:TemplateColumn HeaderText ="性别" > < ItemTemplate > < asp:TextBox runat ="server" Text ='<%# DataBinder.Eval(Container, "DataItem.sex") % > ' ID="Textbox2"> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateColumn > < asp:TemplateColumn HeaderText ="年龄" > < ItemTemplate > < asp:TextBox runat ="server" Text ='<%# DataBinder.Eval(Container, "DataItem.age") % > ' ID="Textbox3"> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateColumn > < asp:TemplateColumn HeaderText ="电话" > < ItemTemplate > < asp:TextBox runat ="server" Text ='<%# DataBinder.Eval(Container, "DataItem.tel") % > ' ID="Textbox4"> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateColumn > < asp:TemplateColumn HeaderText ="地址" > < ItemTemplate > < asp:TextBox runat ="server" Text ='<%# DataBinder.Eval(Container, "DataItem.addr") % > ' ID="Textbox5"> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateColumn > </ Columns > </ asp:DataGrid > < asp:Button id ="Button1" style ="Z-INDEX: 102; LEFT: 80px; POSITION: absolute; TOP: 232px" runat ="server" Text ="批量更新" ></ asp:Button > 在cs文件中写如下代码 private void Page_Load( object sender, System.EventArgs e) ... { // 在此处放置用户代码以初始化页面 if(!this.IsPostBack) ...{ this.Bind(); } } public void Bind() ... { try ...{ SqlDataAdapter da=new SqlDataAdapter("select * from userinfo",conn); DataSet ds=new DataSet(); da.Fill(ds,"gg"); this.DataGrid1.DataSource=ds; this.DataGrid1.DataBind(); } catch(Exception Err) ...{ throw Err; } finally ...{ } } Web 窗体设计器生成的代码 #region Web 窗体设计器生成的代码 override protected void OnInit(EventArgs e) ...{ // // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。 // InitializeComponent(); base.OnInit(e); } /**//// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() ...{ this.Button1.Click += new System.EventHandler(this.Button1_Click); this.Load += new System.EventHandler(this.Page_Load); } #endregion private void Button1_Click( object sender, System.EventArgs e) ... { int k=0; for(int i=0;i<this.DataGrid1.Items.Count;i++) ...{ int id=int.Parse(((Label)DataGrid1.Items[i].FindControl("Label1")).Text); string username=((TextBox)DataGrid1.Items[i].FindControl("TextBox1")).Text; string sex=((TextBox)DataGrid1.Items[i].FindControl("TextBox2")).Text; int age=int.Parse(((TextBox)DataGrid1.Items[i].FindControl("TextBox3")).Text); string tel=((TextBox)DataGrid1.Items[i].FindControl("TextBox4")).Text; string addr=((TextBox)DataGrid1.Items[i].FindControl("TextBox5")).Text; string sql="update userinfo set uname='"+username+"',sex='"+sex+"',age="+age+",tel='"+tel+"',addr='"+addr+"' where id="+id+""; SqlCommand cmd=new SqlCommand(sql,conn); if(conn.State==ConnectionState.Closed) ...{ conn.Open(); } k=cmd.ExecuteNonQuery(); } if(k>0) ...{ Page.RegisterStartupScript("","<script>alert('更新成功!');</script>"); } } 2.GridView 批量更新 在html的form中设置如下的GridView < asp:GridView ID ="GridView1" runat ="server" AutoGenerateColumns ="False" Width ="873px" > < Columns > < asp:TemplateField HeaderText ="ID" > < ItemTemplate > < asp:Label ID ="Label1" runat ="server" Text ='<%# Bind("id") % > '> </ asp:Label > </ ItemTemplate > </ asp:TemplateField > < asp:TemplateField HeaderText ="用户名" > < ItemTemplate > < asp:TextBox ID ="TextBox2" runat ="server" Text ='<%# Bind("uname") % > '> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateField > < asp:TemplateField HeaderText ="性别" > < ItemTemplate > < asp:TextBox ID ="TextBox3" runat ="server" Text ='<%# Bind("sex") % > '> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateField > < asp:TemplateField HeaderText ="年龄" > < ItemTemplate > < asp:TextBox ID ="TextBox4" runat ="server" Text ='<%# Bind("age") % > '> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateField > < asp:TemplateField HeaderText ="电话" > < ItemTemplate > < asp:TextBox ID ="TextBox5" runat ="server" Text ='<%# Bind("tel") % > '> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateField > < asp:TemplateField HeaderText ="地址" > < ItemTemplate > < asp:TextBox ID ="TextBox6" runat ="server" Text ='<%# Bind("addr") % > '> </ asp:TextBox > </ ItemTemplate > </ asp:TemplateField > </ Columns > </ asp:GridView > </ div > < asp:Button ID ="Button1" runat ="server" Text ="批量更新" OnClick ="Button1_Click" /> 在cs文件中写如下代码 SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings[ " conn " ]); protected void Page_Load( object sender, EventArgs e) ... { if (!this.IsPostBack) ...{ this.Bind(); } } private void Bind() ... { try ...{ SqlDataAdapter da = new SqlDataAdapter("select * from userinfo",conn); DataSet ds = new DataSet(); da.Fill(ds, "ff"); this.GridView1.DataSource = ds; this.GridView1.DataBind(); } catch (Exception Err) ...{ throw Err; } finally ...{ } } protected void Button1_Click( object sender, EventArgs e) ... { int k = 0; foreach (GridViewRow gv in GridView1.Rows) ...{ int id = int.Parse(((Label)gv.FindControl("Label1")).Text); string username = ((TextBox)gv.FindControl("TextBox2")).Text; string sex = ((TextBox)gv.FindControl("TextBox3")).Text; int age = int.Parse(((TextBox)gv.FindControl("TextBox4")).Text); string tel = ((TextBox)gv.FindControl("TextBox5")).Text; string addr = ((TextBox)gv.FindControl("TextBox6")).Text; string sql = "update userinfo set uname='" + username + "',sex='" + sex + "',age=" + age + ",tel='" + tel + "',addr='" + addr + "' where id=" + id + ""; SqlCommand cmd = new SqlCommand(sql, conn); if (conn.State == ConnectionState.Closed) ...{ conn.Open(); } k = cmd.ExecuteNonQuery(); } if (k > 0) ...{ Page.RegisterStartupScript("", "<script>alert('更新成功!');</script>"); } }