asp.net中几个网页跳转的方法及区别

1:注意:Response.Redirect("a.html")是不能跳出框架、IFRAME的。

能够使用html

Response.Write("<script Language=\"Javascript\">top.location=\"login.aspx\";</script>");

  

asp.net中Page.ClientScript.RegisterStartupScript用法小结框架

http://blog.csdn.net/qiujialongjjj/article/details/6680252asp.net

 //ASP.NET后台页面跳转 
Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>if(confirm('保存成功!是否继续添加?')){location.href='ProductonAdd.aspx'}else{location.href='ProductonList.aspx'}</script>");

//后台弹出肯定框

ClientScript.RegisterStartupScript(GetType(), "message", "<script>alert('请正确输入!');</script>");

//ASP.NET后台页面跳转

Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>alert('数据添加成功!');{location.href='ProductonList.aspx'}</script>");

或

Page.ClientScript.RegisterStartupScript(typeof(string), "", "<script>window.location.href='AdminMain.aspx';</script>");

//后台弹出文本框
ScriptManager.RegisterStartupScript(Page, typeof(string), "popUp", "window.open('rptView.aspx','打印预览','toolbar=no,location=no,scrollbars=yes,top=200px,left=200px,width=904px,height=650px')", true);

  

ASP.NET的Page类的RegisterStartupScript函数解析  

http://blog.163.com/budong_weimin_zh/blog/static/129198524201062024654838/异步

 

ScriptManager.RegisterStartupScript 方法

http://www.cnblogs.com/weicleer/archive/2012/11/28/2792421.htmlide

备注:

使用 RegisterStartupScript 方法,可为与部分页面呈现兼容且不具备 Microsoft AJAX Library 依赖项的页面注册启动脚本块。 仅当正在注册该块的控件位于要更新的 UpdatePanel 控件内时,才将经过使用此方法注册的启动脚本块发送到页面。 若要在每次发生异步回发时都注册启动脚本块,请使用该方法的 RegisterStartupScript(Page, Type, String, String, Boolean) 重载。函数

若是要注册与部分页面更新无关的启动脚本,而且只想在初始页面呈现期间注册一次该脚本,请使用 ClientScriptManager 类的RegisterStartupScript 方法。 能够从页面的 ClientScript 属性获取对 ClientScriptManager 对象的引用。post

RegisterStartupScript 方法所呈现的脚本块会在页面完成加载之时、但页面的客户端 onload 事件引起以前执行。 启动脚本块位于呈现的 ASP.NET 页面底部的 </form> 标记以前。ui

不能保证使用 RegisterStartupScript 注册的启动脚本块按照其注册顺序输出。 若是启动脚本块的顺序很重要,请使用 StringBuilder 对象将脚本块集中到一个字符串中,而后将它们做为单个启动脚本进行注册。  url

 

    protected override void OnInit(EventArgs e)
    {
        if (Request.Cookies["userinfo"] != null && Request.Cookies["userinfo"]["UserCode"] != null)
        {
            //to do other thing
        }
        else
        {
            //Response.Write("<script>parent.location='../SysManage/login.aspx'</script>");
            Response.Write("<script Language=\"Javascript\">window.location=\"../SysManage/login.aspx\";</script>");
            Response.End();
            //Response.Redirect("../SysManage/login.aspx");//注:当网页回退时,上面两种方式并不可以返回
            return;
        }

        base.OnInit(e);
    }

  注意:spa

当网页回退时:若是有iframe时,采用redirect方法是能够返回的,可是只是将iframe中的网页返回,此时显示是有问题的。当采用write方法时,须要执行Response.End(); 不然子类会继续执行下去,响应请求。当调用end方法时,会当即中止该页的执行
相关文章
相关标签/搜索