DataGrid中添加删除确认对话框

在DataGrid的使用中,经常需要为删除按纽添加确认对话框,根据我的学习经验,总结了三种方法,原理都是在客户端为删除按纽添加脚本代码来实现删除前弹出确认对话框。
方法一:
当为DataGrid控件添加删除按纽后,为DataGrid控件添加ItemDataBound事件处理程序,代码如下:
//添加删除确认对话框。
   switch(e.Item.ItemType)
   {
    case ListItemType.Item:
    case ListItemType.EditItem:
    case ListItemType.AlternatingItem:
     ((LinkButton)e.Item.Cells[4].Controls[0]).Attributes.Add("onclick","return confirm('你真的要删除第"+(e.Item.ItemIndex+1).ToString()+"行吗?');");
     break;
   }
其中,e.Item.Cells[4]说明你添加的删除按纽在DataGrid控件中位于第五列,列号从0开始。
方法二:使用模板列
1.为DataGrid添加一个模板列,名为“自定义删除”,在这个模板列中添加一个按纽,将按纽的CommandName属性设为UserDelete;
2.为DataGrid添加ItemCreated事件,添加客户端脚本程序,代码如下:
switch(e.Item.ItemType)
   {
    case ListItemType.Item:
    case ListItemType.EditItem:
    case ListItemType.AlternatingItem:
     Button myDelButton = (Button)e.Item.FindControl("btnDelete");
     myDelButton.Attributes.Add("onclick","return confirm('你真的要删除第"+(e.Item.ItemIndex+1).ToString()+"行吗?');");
     break;
   }
3.为DataGrid添加ItemCommand事件,处理删除事件,代码如下:
if(e.CommandName == "UserDelete")
   {
      //执行删除。
   }
方法三:
这种方法很少见到人用,但却是最简单的方法,方法如下:
将DataGrid的删除按纽的文本属性设为如下代码:
<div id=d onclick="JavaScript:return confirm('你真的要删除这一行吗?');">删除</div>
方法四:
为OnClientClick属性赋值:OnClientClick="return confirm('你真的要删除这一行吗?');",强烈建议使用这种方法。
Tag标签: ASP.NET
posted @ 2005-12-19 21:44 stewen 阅读(1382) 评论(6)  编辑 收藏 网摘 所属分类: 【Web开发】

  回复  引用    
#1楼 2006-07-05 17:08 | vovts [未注册用户]
<div id=d onclick="JavaScript:return confirm('你真的要删除这一行吗?');">删除</div>

good idea!!!
  回复  引用    
#2楼 2007-03-06 14:32 | yt [未注册用户]
给上面的仁兄提个错误!
方法2 里面 不应该添加ItemCreated事件 应该添加ItemDataBound事件 经过我的试验 应该不会有问题
  回复  引用    
#3楼 2007-04-01 13:29 | king [未注册用户]
ItemCreated也可以吧.他也没有操作里面的数据
  回复  引用    
#4楼 2007-08-06 10:40 | lizzy [未注册用户]
谢谢你的方法!
  回复  引用    
#5楼 2007-08-18 10:16 | qing [未注册用户]
我完全按照你的方法做的.但是出现了一个问题,即弹出对话框后,无论是点确认还是取消都会将数据删除掉,这是怎么回事啊???
  回复  引用  查看    
#6楼 [楼主]2007-08-18 19:02 | stewen.net      
可能是你没有设置对吧,调试一下看看怎样吧




标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-03-26 10:42 编辑过
Google站内搜索
[推荐职位]上海盛大网络招聘架构师

China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》

相关文章:


相关搜索:
ASP.NET

相关链接: