Page.ClientScript.RegisterStartupScript(this.GetType(), "ok", " <script lanuage=javascript>if(confirm('确定删除?')==false){history.back()}; </script>"); 

解决方案 »

  1.   

    Page.ClientScript.RegisterStartupScript(this.GetType(), "ok", " if(confirm('确定删除?')==false){history.back();return true;}else{return false;};",true); 
      

  2.   

    因为服务器端代码先执行,删除完了,才把你的提示框发送到客户端你应该
    Page.ClientScript.RegisterStartupScript(this.GetType(), "ok", " <script lanuage=javascript>if(confirm('确定删除?'){location.href='delete.aspx?id=xxxx'}; </script>"); 
      

  3.   

    是的 最好用 button.Attribute.Add()
      

  4.   

    把history.back()改成  return false ???没用啊~
      

  5.   

    page_load中添加:btnDelete.Attribute.Add("onclick","if(confirm('确定删除?')==false){history.back();return true;}else{return false;};")
      

  6.   

    button在gridview里啊。。写不出来!~
      

  7.   

    你改成下面试试:
    Page.ClientScript.RegisterStartupScript(this.GetType(), "ok", " <script lanuage=javascript>if(confirm('确定删除?')){history.back()}; </script>"); 
      

  8.   


    你这个代码,还没有输出到html中,当前页面就已经删除了数据了。搞清楚RegisterStartupScript是什么机制。不要轻信“在服务器端执行js”这种话。
      

  9.   

    我看到很多人说什么“在服务器端调用js”这种话。我想这迟早会导致这类bug的。你需要从头设计你的流程。其中比较简单的做法是提早把confirm相关的代码注册到html element上,而不是什么调用 RegisterStartupScript。如果要从服务器端再回到客户端,进行两阶段的编程,我以前写过一个demo,参见:《ASP.net关于确认、取消提示的问题
      

  10.   

    //添加确认按钮
        protected void Rep_News_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            LinkButton lb = e.Item.FindControl("lbDel") as LinkButton;
            lb.Attributes.Add("onclick", "return confirm('此操作不可恢复,确认要删除么?')");
        }
    这是repeater控件的,你看你用的什么?
      

  11.   

    这么写:
    if(confirm('删除吗?') == false) return false;
      

  12.   


    那怎么办呀。。我只是想在Gridview里的删除按钮弄个确认。都做不出来。悲剧死了
      

  13.   

    这是gridview的删除列,如果你自己加的button就改改
     LinkButton btnDelete = (LinkButton)e.Row.Cells[你的删除按钮列的索引].Controls[0];
     btnDelete.Attributes.Add("onclick", "javascript:return " + "confirm('确定删除编号为" + DataBinder.Eval(e.Row.DataItem, "ErrandID") + "的记录么?')");
      

  14.   

    在RowDataBound事件里添加if (e.Row.RowType == DataControlRowType.DataRow)
            {
                LinkButton btnDelete = (LinkButton)e.Row.Cells[0].Controls[0];
                btnDelete.Attributes.Add("onclick", "javascript:return " + "confirm('确定删除编号为" + DataBinder.Eval(e.Row.DataItem, "ErrandID") + "的记录么?')");
    }
      

  15.   

    我就想在删除前加一个确认。这个删除按钮在GridView里这个流程要怎么设计呀。有很复杂么?
      

  16.   

    代码的优先级别没有搞懂你要在提交给.cs前就要问用户是否删除,否则你看到的都会是已经处理完后才出现提示<a href="javascript:vodi(0)" onclick="if(confirm('确定删除记录吗?')){location.href='?act=del&id=xxx'}"
      

  17.   

    <asp:LinkButton ID="BtnDelete" runat="server" CausesValidation="False" CommandName="Delete" 
    Text="Delete" OnClientClick="return confirm(’确认要删除此行信息吗?’)"></asp:LinkButton> 这样试试吧
      

  18.   

    结贴。。辛苦各位的回答。
    在RowDataBound写Attributes.Add正解啊。。
    折腾了我太久了。谢谢各位了
      

  19.   

    onclick="return confirm('确认删除么?');"