ASP.NET Gridview 中使用checkbox删除的2种方法实例分享

方法一:
后台代码:

复制代码 代码如下:


 protected void btn_delete_Click(object sender, EventArgs e)
    {
        for (int i = 0; i <this.GridView1.Rows.Count; i++)
        {
            int id = Convert.ToInt32(this.GridView1.DataKeys[i].Value);
            if ((this.GridView1.Rows[i].Cells[0].FindControl("CheckBox1") as CheckBox).Checked == true)
            {
                Delete(id);
                ClientScript.RegisterStartupScript(GetType(),"提示","<script>alert('删除成功!')</script>");
            }
        }
        this.GridView1.DataBind();
    }//删除
    private void Delete(int id)
    {
        using (SqlConnection conn = new SqlConnection(str))
        {
            conn.Open();
            SqlCommand comm = conn.CreateCommand();
            comm.CommandText = "delete from Notice_Msg where id=@id";
            comm.Parameters.Add(new SqlParameter("@id", id));
            comm.ExecuteNonQuery();
        }
    }


前台代码:

复制代码 代码如下:


<asp:GridView runat="server" DataKeyNames="id">


另外还得添加一列,让其绑定的字段为id,并且把这一列的visable属性设为false
方法二:
后台:

复制代码 代码如下:


 protected void btn_delete_Click(object sender, EventArgs e)
    {
        foreach (GridViewRow row in this.GridView1.Rows)
        {
            if (row.RowType == DataControlRowType.DataRow)
            {
                CheckBox ckb = row.Cells[2].FindControl("CheckBox1") as CheckBox;
                if (ckb.Checked)
                {
                    using (SqlConnection sqlCnn = new SqlConnection(str))
                    {
                        using (SqlCommand sqlCmm = sqlCnn.CreateCommand())
                        {
                            sqlCmm.CommandText = "delete from Regime_Table where ";
                            sqlCnn.Open();
                            int a= sqlCmm.ExecuteNonQuery();
                            if (a>0)
                            {
                                ClientScript.RegisterStartupScript(GetType(),"提示","<script>alert('删除成功!')</script>");
                            }
                            else
                            {
                                ClientScript.RegisterStartupScript(GetType(), "提示", "<script>alert('删除失败!')</script>");
                            }
                            this.DataBind();
                        }
                    }
                }
            }
        }
    }


前台:

复制代码 代码如下:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjgjpw.html