window.location.href的使用方法

 http://hljqfl.blog.163.com/blog/static/40931580201122210573364/

在写ASP.Net程序的时候,我们常常遇到跳转页面的问题,我们常常使用Response.Redirect 做ASP.NET框架页跳转,假设客户要在跳转的时候使用提示,这个就不灵光了,如:

Response.Write("< script>alert('恭喜您,注冊成功!');< /script>");  
Response.Redirect("main.html");   

这时候我们的提示内容没有出来就跳转了,和Response.Redirect("main.html");没有不论什么差别。

这时我们採用以下代码试验一下:

ASP.NET框架页跳转的还有一实现

Response.Write("< script language=javascript>alert('恭喜您,注冊成功!')< /script>");  
Response.Write("< script language=javascript>window.location.href='main.html'< /script>"); 

这个即实现了我们的要求,在提示后,跳转页面。

最重要的是window.location.href 语句能够实现一个框架的页面在运行server端代码后刷新还有一个框架的页面(Response.Redirect无法达到,至少我没有发现):

如:index.htm页面中有二个框架,分别为 frameLeft和frameRight,在frameRight页面中运行server端代码后刷新frameLeft中的页面。

先前最常见的是注冊之后,自己主动刷新登陆框,让登陆框换成已登陆页面,仅仅要在注冊成功的代码之后加上一段,即能够实现刷新另个框架的页面。代码例如以下:

Response.Write("< script language=javascript>alert('恭喜您,注冊成功!')< /script>");  
Response.Write("< script language=javascript>window.parent.frameLeft.location.href='main.html'< /script>");   

这样就搞定了ASP.NET框架页跳转中断的问题。

 

=====================================================================================

 

"window.location.href"、"location.href"是本页面跳转

"parent.location.href"是上一层页面跳转

"top.location.href"是最外层的页面跳转

举例说明:

假设A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,假设D中js这样写

"window.location.href"、"location.href":D页面跳转

"parent.location.href":C页面跳转

"top.location.href":A页面跳转

假设D页面中有form的话,

<form>: form提交后D页面跳转

<form target="_blank">: form提交后弹出新页面

<form target="_parent">: form提交后C页面跳转

<form target="_top"> : form提交后A页面跳转

 

 

关于页面刷新,D 页面中这样写:

 

"parent.location.reload();": C页面刷新 (当然,也能够使用子窗体的 opener 对象来获得父窗体的对象:window.opener.document.location.reload(); )

 

 

"top.location.reload();": A页面刷新

 

posted @ 2014-07-19 16:21  hrhguanli  阅读(906)  评论(0编辑  收藏  举报