一下的这三种方法发布好之后放在IIS里边 都可以先弹出对话框,然后才调转页面。但是发布到网上却不弹出对话框, 怎么回事?              1、Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('恭喜您注册成功,现在将跳转到用户管理页面!');window.top.location.href='MemberCenter.aspx';</script>");               2、Response.Write("<script>alert('恭喜您注册成功,现在将跳转到用户管理页面!');location.href='MemberCenter.aspx';</script>");
               3、          ClientScript.RegisterStartupScript(this.GetType(), "loginerr", JS.Alert("注册成功!"));
                Response.Write("<script>window.setTimeout(\"window.top.location.href='MemberCenter.aspx'\",100);</script>");
请高手提供一个好方法!

解决方案 »

  1.   


    /// <summary>
        /// 弹出消息框并且转向到新的URL
        /// </summary>
        /// <param name="message">消息内容</param>
        /// <param name="toURL">连接地址</param>
        public static void AlertAndRedirect(string message, string toURL, Page page)
        {
            #region
            string js = "<script language=javascript>alert('{0}');window.location.replace('{1}')</script>";
            //HttpContext.Current.Response.Write(string.Format(js, message, toURL));
            if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "AlertAndRedirect"))
            {
                page.ClientScript.RegisterStartupScript(page.GetType(), "AlertAndRedirect", string.Format(js, message, toURL));
            }
            #endregion
        }
      

  2.   

    这个仁兄呀!在iis 里边测试可以弹出来,但是放到网上谈不出来呀!怎么回事呢?
      

  3.   


                        HttpContext.Current.Response.Write("<script  type=\"text/javascript\">alert('注册成功!');window.location.replace('MemberCenter.aspx');</script>");
    如果在本地可以上传就不行的话
    可能是浏览器屏蔽了这样弹出的代码!
      

  4.   

    但是我用的是同一个浏览器呀 IE6.0 , 遨游我都用了, 在本地的IIS里边测试 完全可以,但是放到网上就不行了!!