我用一个Button事件处理完数据后直接Response.Redirect到目标页
现在我想在处理完数据后加一个弹出的提示框提示成功与否后在进入到目标页 
用Page.RegisterStartupScript(..)这个提示显示不出来

解决方案 »

  1.   

    string script = "<script language='javascript'>\n";
    script += "alert('发送成功');\n";       
    script += "window.location.href = '目标页';";
    script += "\n</script>";
    Page.RegisterStartupScript("Change",script);
      

  2.   

    Response.Write("<script language=\"javascript\">alert(\"添加记录成功\");document.location=\"admin.aspx\";</script>");
      

  3.   

    String url = "你的目标页";
    try
    {
    //你的事件
    }
    catch(Exception ex)
    {
    Response.Write("<script>alert('发布失败!');window.open('" + url+ "','_self');</script>");
    }
    finally
    {
    Response.Write("<script>alert('发布成功!');window.open('" + url+ "','_self');</script>");
    }
      

  4.   

    有个笨办法:在aspx页面放一个隐藏的文本域
    <INPUT id="SaveResult" style="DISPLAY: none; WIDTH: 16px; HEIGHT: 22px" type="text" size="1" name="SaveResult" runat="server">后台button事件
    private void Save_Exit_Btn_Click(object sender, System.EventArgs e)
    {
    //...省略按钮的其他服务器端事件
    this.SaveResult.Value = "SaveExit";
    }在aspx部分的<head>与</head>之间,加上下面的事件
    <script language="javascript">
    function window_load()
    {
      if(document.all["SaveResult"].value == "SaveExit" && confirm("你确信吗?")){
             document.all["SaveResult"].value = "";
    window.location.href = "你所要转向的页面以及所带参数等"
      }
    }
    </script>
    在你执行完button的服务器端事件后,令隐藏的文本域的值为某一值,然后在aspx页面部分body部分
    <body MS_POSITIONING="GridLayout" onload="window_load();">以上是我的笨办法,不知道哪位又更好的办法
      

  5.   

    Response.Write("<script>if (confirm('添加成功!是否要查看详细内容?'))document.location.href='../Crystal/pdf.aspx'</script>");
      

  6.   

    如果要用我那个的话,改一下
    function window_load()
    {
      if(document.all["SaveResult"].value == "SaveExit"){
             alert("数据保存成功?")
             document.all["SaveResult"].value = "";
    window.location.href = "你所要转向的页面以及所带参数等"
      }
    }