GridView删除事件

GridView删除事件首先:转摘一段GridView删除的文章RowDeleting和RowDeleted事件RowDeleting发生在删除数据之前,RowDeleted发生在删除数据之后。使用RowDeletin

大家好,又见面了,我是你们的朋友全栈君。

首先:转摘一段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.net/155729.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • threadlocal底层实现_hashset底层实现原理

    threadlocal底层实现_hashset底层实现原理ThreadLocal作用:提供线程内的局部变量,不同的线程之间不会相互干扰,这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或组件之间一些公共变量传递的复杂性。package com.mupack;public class App{ private String content; public void setContent(String content) { this.content = content; } public Stri

    2022年8月8日
    3
  • 什么情况 进不去论坛

    什么情况 进不去论坛

    2021年8月26日
    51
  • Oracle 函数 wm_concat 将列转行 用法 实例

    Oracle 函数 wm_concat 将列转行 用法 实例

    2021年8月31日
    84
  • 跨平台移动APP开发进阶(二):HTML5+、mui开发移动app教程[通俗易懂]

    跨平台移动APP开发进阶(二):HTML5+、mui开发移动app教程[通俗易懂]前端开发APP,从HBuilder开始~序通过HTML5开发移动App时,会发现HTML5很多能力不具备。为弥补HTML5能力的不足,在W3C中国的指导下成立了www.HTML5Plus.org组织,推出HTML5+规范。HTML5+扩展了JavaScript对象plus,使得js可以调用各种浏览器无法实现或实现不佳的系统能力,设备能力如摄像头

    2022年5月31日
    36
  • linux的linux-aarch64和 linux-x86_64「建议收藏」

    linux的linux-aarch64和 linux-x86_64「建议收藏」在下载linuxtar包的时候可以看到有下面两种tar包。。。。。。。。什么意思呢?linux-aarch64.tar.gzlinux-x86_64.tar.gz是指服务器内核版本使用命令$arch即可查看自己linux的内核版本。正常情况下下载x86的就可以这个说是cpu架构https://blog.csdn.net/rd_w_csdn/article/details/53841018这个说是交叉编译工具链应该也是提供一个aarch64内核…

    2022年10月17日
    2
  • linux之fstab文件详解「建议收藏」

    linux之fstab文件详解「建议收藏」/etc/fstab是用来存放文件系统的静态信息的文件。位于/etc/目录下,可以用命令less/etc/fstab来查看,如果要修改的话,则用命令vi/etc/fstab来修改。当系统启动的时候,系统会自动地从这个文件读取信息,并且会自动将此文件中指定的文件系统挂载到指定的目录。下面我来介绍如何在此文件下填写信息。

    2025年8月9日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号