zoukankan      html  css  js  c++  java
  • GrideView(二)---删除功能

    情景一、 没有外键关联,
    操作:在数据源中将删除选项选中--- GrideView 中的删除 选项选中 即可
    情景二、 有外键关联
    *RowDeleting 行删除前触发
    *RowDeleted 行删除后触发
    操作有外键关联的表,需要在执行删除前先把关联数据删除:
    法一:
    // 执行删除操作前执行

     1 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
     2 {
     3 //// 获取主键
     4 //string key = e.Keys["Code"].ToString(); //有个前提:事先必须要保证GridView的DataKeyNames属性有值。
     5 // //执行删除
     6 //var query1 = _Context.Work.Where(p => p.InfoCode == key);
     7 //var query2 = _Context.Family.Where(p=>p.InfoCode == key);
     8 //_Context.Work.DeleteAllOnSubmit(query1);
     9 //_Context.Family.DeleteAllOnSubmit(query2);
    10 //_Context.SubmitChanges();
    11 ////执行 LinQDataSource的删除功能
    12 }
    13 // 删除完毕后执行,提示用户已经删除完毕
    14 protected void GridView1_RowDeleted(object sender, GridViewDeletedEventArgs e)
    15 {
    16 //Literal1.Text = "<script language=javascript>alert('删除成功')</script>";
    17 }

    // 查询数据相关数据,没有数据时,页面提示
    将EmptyDataText属性设置 : “未找到相关数据!”

    法二:

     1 //删除工作简历和家庭关系
     2 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
     3 {
     4 //获取主键
     5 string key = e.Keys["Code"].ToString();
     6 //把三个表都删掉。
     7 var query = _Context.Info.Where(p=>p.Code == key);
     8 Info data = query.First();
     9 
    10 _Context.Work.DeleteAllOnSubmit(data.Work);
    11 _Context.Family.DeleteAllOnSubmit(data.Family);
    12 _Context.Info.DeleteOnSubmit(data);
    13 _Context.SubmitChanges();
    14 //刷新,阻止事件向前进行。
    15 GridView1.DataBind();
    16 e.Cancel = true; //阻止事件序列。
    17 //Literal1.Text = "<script language=javascript>alert('删除成功')</script>";// 提示删除成功
    18 }

    方法三、1、编辑列--添加超链接列(HyperLinkField)--设置text =“删除”;
    2、 将此超链接指向某个字段(DataNavigateUrlFields=Code)
    3、DataNavigateUrlFormatString=“Delete.ashx?id={0}” 注:{0}的意思是指的上面的指向的Code;
    4、添加一般处理程序(Delete.ashx) 添加删除程序并跳转回显示页面;


    情景描述: 执行删除时 ,提示是否确定删除
    法一、

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
    //给删除按钮加确认
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
    LinkButton btnDelete = e.Row.Cells[5].Controls[0] as LinkButton;
    btnDelete.OnClientClick = "return confirm('确认要删除吗?')";
    }
    }
    

      


    法二 、 在“编辑列”中 给 删除 添加 样式,添加样式后
    通过Jquery 添加点击事件
    <script language="javascript">
    $(document).ready(function () {
    $(".del").click(function () {
    return confirm('确认要删除吗?');
    });
    });
    </script>

  • 相关阅读:
    IOS添加pch预编译文件
    UITableview控件基本使用
    两种单例模式的写法
    提交app Store审核时,Missing 64-bit support问题的解决办法
    IOS开发NSString与int和float的相互转换以及字符串拼接、NSString、NSData、char* 类型之间的转换
    获取UITableView每行中不同的UITextField输入的内容(例如修改登陆密码)
    UITextField常用属性归纳:文本框样式、文字样式、键盘样式、左右视图样式、清除按钮设置等,iosuitextfield
    UITabBarController(标签栏控制器)
    iOS基础控件UINavigationController中的传值
    IOS开发之多线程
  • 原文地址:https://www.cnblogs.com/woniu-net/p/4777597.html
Copyright © 2011-2022 走看看