GridView使用CommandField删除列实现删除时提示确认框

 更新时间:2013年09月06日 11:34:41   作者:  
在.net2005提供的GridView中我们可以直接添加一个CommandField删除列完后在它的RowDeleting事件中完成删除
GridView在使用CommandField删除时弹出提示框,在.net2005提供的GridView中我们可以直接添加一个CommandField删除列:<asp:CommandField ShowDeleteButton="True" />,完后在它的RowDeleting事件中完成删除。但在多半我们在做这种删除操作时都需要先让操作者再确认下,完后再进行删除,以避免误操作引起的误删除。

可以通过下面方法给GridView删除前加上个确认对话框。

首先,在GridView的属性对框话框中点击“Columns”进入它的“字段”设计器。接着在“字段”设计器中选择以前已加上的那个CommandField“删除”列,这时在它的属性列表下会看到一个“将此它段转换为 TemplateFied”的项,点击将它转换为TemplateFied列。

完后退出该字段设计器,切换到源码视图你会发现该列已由原来的:<asp:CommandField ShowDeleteButton="True" />
变为了:
复制代码 代码如下:

<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Delete" Text="删除"></asp:LinkButton>
</ItemTemplate>

最后在<asp:LinkButton>中加入:OnClientClick="return confirm('确认要删除吗?');"

这样点击删除时就会先在客户端弹出“确认要删除吗?”对话框,而原来在RowDeleting事件中写的代码完全不用改变。

第二种方法:

实现方法:

双击GridView的OnRowDataBound事件;

在后台的GridView1_RowDataBound()方法添加代码,最后代码如下所示:
复制代码 代码如下:


protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//如果是绑定数据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
{
((LinkButton)e.Row.Cells[6].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('你确认要删除:\"" + e.Row.Cells[1].Text + "\"吗?')");
}
}

}

以上是两种最常见的完善GridView中的删除控件的方法,这两种方法还没有实现对特定数据的绑定作用。

相关文章

  • 如何使用Microsoft.Extensions.AI简化.NET中的AI集成

    如何使用Microsoft.Extensions.AI简化.NET中的AI集成

    Microsoft.Extensions.AI是一个创新的 .NET 库,它为平台开发人员提供了一个内聚的 C# 抽象层,简化了与大型语言模型(LLMs)和嵌入等AI服务的交互,本文给大家介绍如何使用Microsoft.Extensions.AI简化.NET中的AI集成,感兴趣的朋友一起看看吧
    2024-11-11
  • GridView控件实现数据的显示和删除(第8节)

    GridView控件实现数据的显示和删除(第8节)

    这篇文章主要介绍了GridView控件实现数据的显示和删除,以新闻网站为例,实现对新闻数据的操作,了解各种数据源控件与数据绑定控件的类型和作用,需要的朋友可以参考下
    2015-08-08
  • ASP.NET Forms身份认证

    ASP.NET Forms身份认证

    asp.net程序中,用户可以根据角色访问对应页面以及功能。本文将对此进行介绍,具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • 使用chrome控制台作为.Net的日志查看器

    使用chrome控制台作为.Net的日志查看器

    这篇文章介绍了使用chrome控制台作为.Net日志查看器的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • ASP.NET Core使用JWT自定义角色并实现策略授权需要的接口

    ASP.NET Core使用JWT自定义角色并实现策略授权需要的接口

    这篇文章介绍了ASP.NET Core使用JWT自定义角色并实现策略授权需要的接口,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-01-01
  • webapi中如何使用依赖注入

    webapi中如何使用依赖注入

    本篇将要和大家分享的是webapi中如何使用依赖注入,依赖注入这个东西在接口中常用,实际工作中也用的比较频繁,因此这里分享两种在api中依赖注入的方式Ninject和Unity。下面跟着小编一起来看下吧
    2017-02-02
  • ASP.NET之自定义异步HTTP处理程序(图文教程)

    ASP.NET之自定义异步HTTP处理程序(图文教程)

    前面我们学习了关于关于自定义同步HTTP处理程序,相信大家可能感觉有所成就,但是这种同步的机制只能对付客户访问较少的情况或者数据处理量不大的情况,而今天这篇文章就是解决同步HTTP处理程序的这个致命缺点,有效的使用服务器的资源
    2013-01-01
  • DataAdapter执行批量更新的实例代码

    DataAdapter执行批量更新的实例代码

    这篇文章介绍了DataAdapter执行批量更新的实例代码,有需要的朋友可以参考一下,希望对你有所帮助
    2013-07-07
  • ASP.NET中生成Excel遇到的问题及改进方法

    ASP.NET中生成Excel遇到的问题及改进方法

    这是在项目中使用的生成Excel的一个方法(其实是我在网上收集),用了半年时间,并未出现异常情况。近日当我再次使用该方法生成Excel的时候出现了问题
    2011-02-02
  • 浅谈.net平台下深拷贝和浅拷贝

    浅谈.net平台下深拷贝和浅拷贝

    在.net类库中,对象克隆广泛存在于各种类型的实现中,凡是实现了ICloneable接口的类型都具备克隆其对象实例的能力。所以本文讲述的深拷贝和浅拷贝也是在实现ICloneable接口的基础上进行的
    2013-12-12

最新评论