js页面跳转及刷新的方法

我们再用js跳转的时候,经常用window.location.href="" 

 

但是我们再把一个窗体嵌入到iframe的时候,通常我们用上面的语句,只是iframe内的页面返回到指定的页面,但是有些时候我们想要整个页面返回到指定的页面,我们就需要用parent.window.location.href="".这样就可以了。



"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页面刷新
window.location.href = window.location.href 也可以实现页面刷新,它与reload的区别是:如果在reload之前想服务器提交过数据,那么执行reload会重新执行这个提交操作。 而window.location.href = window.location.href 则不会,因为它是重新进入页面。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/defonds/archive/2009/05/08/4159512.aspx  

 

 

通过js或者html或者php等动态程序都可以方便的实现跳转

js方式的页面跳转
1.window.location.href方式
    <script language="javascript" type="text/javascript">
           window.location.href="http://www.dayanmei.com/"; 
    </script>

2.window.navigate方式跳转
   <script language="javascript">
    window.navigate("top.jsp");
</script>

3.window.loction.replace方式实现页面跳转,注意跟第一种方式的区别
<script language="javascript">
    window.location.replace("http://www.dayanmei.com");
</script>
有3个jsp页面(1.jsp, 2.jsp, 3.jsp),进系统默认的是1.jsp ,当我进入2.jsp的时候, 2.jsp里面用window.location.replace("3.jsp");与用window.location.href ("3.jsp");从用户界面来看是没有什么区别的,但是当3.jsp页面有一个"返回"按钮,调用window.history.go(-1); wondow.history.back();方法的时候,一点这个返回按钮就要返回2.jsp页面的话,区别就出来了,当用 window.location.replace("3.jsp");连到3.jsp页面的话,3.jsp页面中的调用 window.history.go(-1);wondow.history.back();方法是不好用的,会返回到1.jsp 。

4.self.location方式实现页面跳转,和下面的top.location有小小区别
   <script language="JavaScript">
          self.location='top.htm';
   </script>

5.top.location
   <script language="javascript">
          top.location='xx.jsp';
   </script>

6.不推荐这种方式跳转
    <script language="javascript">
    alert("返回");
    window.history.back(-1);
   </script>

在php程序中,这种方式跳转前面不能有任何输出
<?php
header("url.php");
?>

meta方式实现跳转(content = 3 单位是秒)
<meta http-equiv=refresh content=3;URL="http://www.dayanmei.com">

总结二:

1. Javascript 返回上一页 history.go(-1), 返回两个页面: history.go(-2); 

2. history.back(). 

3. window.history.forward()返回下一页 

4. window.history.go(返回第几页,也可以使用访问过的URL) 

例: 
<a href="javascript:history.go(-1);">向上一页</a> 

response.Write("<script language=javascript>") 
response.Write("if(!confirm('完成任务?')){history.back();}") 
response.Write("</script>") 
response.Write("<script language=javascript>history.go(-1);</script>") 
<a href="javascript:history.go(-1);">向上一页</a> 

页面跳转:onclick="window.location.href='list.aspx'" 

P.S. 
小技巧(JS引用JS): 
<script type=text/javascript> 
<!-- 
if (typeof SWFObject == "undefined") { 
document.write('<scr' + 'ipt type="text/javascript" src="/scripts/swfobject-1.5.js"></scr' + 'ipt>');} 
//--> 
</script> 

Javascript刷新页面的几种方法: 
1    history.go(0) 
2    location.reload() 
3    location=location 
4    location.assign(location) 
5    document.execCommand('Refresh') 
6    window.navigate(location) 
7    location.replace(location) 
8    document.URL=location.href 

自动刷新页面的方法: 
1.页面自动刷新:把如下代码加入<head>区域中 
<meta http-equiv="refresh" content="20"> 
其中20指每隔20秒刷新一次页面. 

2.页面自动跳转:把如下代码加入<head>区域中 
<meta http-equiv="refresh" content="20;url=http://www.wyxg.com"> 
其中20指隔20秒后跳转到http://www.wyxg.com页面 

3.页面自动刷新js版 
<script language="JavaScript"> 
function myrefresh() 

       window.location.reload(); 

setTimeout('myrefresh()',1000); //指定1秒刷新一次 
</script> 

ASP.NET如何输出刷新父窗口脚本语句 
1.   this.response.write("<script>opener.location.reload();</script>"); 

2.   this.response.write("<script>opener.window.location.href = opener.window.location.href;</script>"); 


3.   Response.Write("<script language=javascript>opener.window.navigate(''你要刷新的页.asp'');</script>") 


JS刷新框架的脚本语句 

//如何刷新包含该框架的页面用 
<script language=JavaScript> 
   parent.location.reload(); 
</script> 

//子窗口刷新父窗口 
<script language=JavaScript> 
    self.opener.location.reload(); 
</script> 
( 或 <a href="javascript:opener.location.reload()">刷新</a>   ) 

//如何刷新另一个框架的页面用 
<script language=JavaScript> 
   parent.另一FrameID.location.reload(); 
</script> 

如果想关闭窗口时刷新或者想开窗时刷新的话,在<body>中调用以下语句即可。 

<body onload="opener.location.reload()"> 开窗时刷新 
<body onUnload="opener.location.reload()"> 关闭时刷新 

<script language="javascript"> 
window.opener.document.location.reload() 
</script>

posted @ 2010-09-25 13:21  rob_2010  阅读(971)  评论(0)    收藏  举报