大家好,又见面了,我是你们的朋友全栈君。
首先:转摘一段GridView删除的文章
RowDeleting和RowDeleted事件 RowDeleting发生在删除数据之前,RowDeleted发生在删除数据之后。 使用RowDeleting事件,可以在真正删除前再次确认是否删除,可以通过设置GridViewDeleteEventArgs.Cancel=True来取消删除;也可以用于判断当前数据库记录数,如果只剩一条记录且数据库不能为空则提示并取消删除操作。 使用RowDeleted事件,可以在删除后,通过GridViewDeletedEventArgs的Exception属性判断删除过程中是否产生异常,如无异常,则可以显示类似于” 1 Records deleted” 之类的提示信息。
Example: protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { //取得当前行号,并取得当前行的GridViewRow对象 int index=e.RowIndex ; GridViewRow gvr=GridView1.Rows[index];
//取得当前行第二个单元格中的文字 str1 = gvr.Cells[1].Text;
//进行提示 Message.Text =”您将删除一个用户,其姓名为” str1 ; }
protected void GridView1_RowDeleted(object sender, GridViewDeletedEventArgs e) { //如果没有产生异常,则提示成功删除,否则提示删除失败 if (e.Exception == null) Message.Text = “<br>您成功删除了” str1 ; else Message.Text = “删除失败,请联系管理员”; }
其次:需要特别说明,如果在GridView中添加了模板列并在其中添加了按钮,只要按钮的CommandName=”Delete” 则GridView控件自动触发 GridView1_RowDeleting 事件,因此你必须添加后台代码来实现。
第三:对删除按钮增加“确定”对话框,有三种方法 1、在后台类代码中编写 lb.Attributes.Add(“onclick”, “return confirm(‘您真的要删除此行吗?’)”); 2、在前台代码中编写 <div id=”de” onclick=”JavaScript:return confirm(‘确定删除吗?’)”>删除</div> 在Div中首先触发的是OnClick事件,然后执行其他事件 例如:<a href=”Default.aspx” onclick=”return confirm(‘确定删除吗?’)”>删除</a> 首先执行,OnClick,然后执行超级链接,若OnClick被取消了,其余的也被取消了。 3、有的控件可能还有OnClientClick事件。 <asp:LinkButton ID=”LinkButton1″ runat=”server” CausesValidation=”False” CommandName=”Delete” Text=”删除” OnClientClick=”return confirm(‘确认要删除吗?’)></asp:LinkButton>
我一般优先选择第三种方法。
附录: GridView事件介绍的文章
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/155729.html原文链接:https://javaforall.cn