一、先来看一个简单的例子:
下面以三个页面分别命名为frame.html、top.html、bottom.html为例来具体说明如何做。
frame.html 由上(top.html)下(bottom.html)两个页面组成,代码如下:
1 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
2 < HTML >
3 < HEAD >
4 < TITLE > frame </ TITLE >
5 </ HEAD >
6 < frameset rows ="50%,50%" >
7 < frame name =top src ="top.html" >
8 < frame name =bottom src ="bottom.html" >
9 </ frameset >
10 </ HTML >
现在假设top.html (即上面的页面) 有七个button来实现对bottom.html (即下面的页面) 的刷新,可以用以下七种语句,哪个好用自己看着办了。 1
top.html 页面的代码如下:
1 top.html 页面的代码如下:
2
3 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
4 < HTML >
5 < HEAD >
6 < TITLE > top.html </ TITLE >
7 </ HEAD >
8 < BODY >
9 < input type =button value ="刷新1" onclick ="window.parent.frames[1].location.reload()" >< br >
10 < input type =button value ="刷新2" onclick ="window.parent.frames.bottom.location.reload()" >< br >
11 < input type =button value ="刷新3" onclick ="window.parent.frames['bottom'].location.reload()" >< br >
12 < input type =button value ="刷新4" onclick ="window.parent.frames.item(1).location.reload()" >< br >
13 < input type =button value ="刷新5" onclick ="window.parent.frames.item('bottom').location.reload()" >< br >
14 < input type =button value ="刷新6" onclick ="window.parent.bottom.location.reload()" >< br >
15 < input type =button value ="刷新7" onclick ="window.parent['bottom'].location.reload()" >< br >
16 </ BODY >
17 </ HTML >
18
下面是bottom.html页面源代码,为了证明下方页面的确被刷新了,在装载完页面弹出一个对话框。 1
1
2<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
3<HTML>
4<HEAD>
5<TITLE> bottom.html </TITLE>
6</HEAD>
7<BODY onl oad="alert('我被加载了!')">
8 <h1>This is the content in bottom.html.</h1>
9</BODY>
10</HTML>
解释一下:
1.window指代的是当前页面,例如对于此例它指的是top.html页面。
2.parent指的是当前页面的父页面,也就是包含它的框架页面。例如对于此例它指的是framedemo.html。
3.frames是window对象,是一个数组。代表着该框架内所有子页面。
4.item是方法。返回数组里面的元素。
5.如果子页面也是个框架页面,里面还是其它的子页面,那么上面的有些方法可能不行。
附:
Javascript刷新页面的几种方法:
1 history.go(0)
2 location.reload()
3 locatinotallow=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://xcp.blogjava.net"
>
其中20指隔20秒后跳转到http://xcp.blogjava.net页面 3.页面自动刷新js版
< script language = " JavaScript " >
function myrefresh()
{
window.location.reload();
}
setTimeout('myrefresh()', 1000 ); // 指定1秒刷新一次
</
script
>
三、java在写Servler,Action等程序时,要操作返回页面的话(如谈出了窗口,操作完成以后,关闭当前页面,刷新父页面)
1
PrintWriter out = response.getWriter();
2
out.write( " <script type=\ " text / javascript\ "
>
"
);
3
子窗口刷新父窗口
4
out.write(
"
self.opener.location.reload();
"
);
5
// 关闭窗口
6
out.write(
"
window.opener=null;
"
);
7
out.write( " window.close(); " );
8
out.write( " </script> " );
四、JS刷新框架的脚本语句
1.如何刷新包含该框架的页面用
< script language = JavaScript >
parent.location.reload();
</
script
>
2.子窗口刷新父窗口
< script language = JavaScript >
self.opener.location.reload();
</
script
>
3.如何刷新另一个框架的页面用 (上面的实例以说明了)
语句1. window.parent.frames[ 1 ].location.reload();
语句2. window.parent.frames.bottom.location.reload();
语句3. window.parent.frames[ " bottom " ].location.reload();
语句4. window.parent.frames.item( 1 ).location.reload();
语句5. window.parent.frames.item('bottom').location.reload();
语句6. window.parent.bottom.location.reload();
语句7. window.parent['bottom'].location.reload();
4.如果想关闭窗口时刷新或者想开窗时刷新的话,在<body>中调用以下语句即可。
< body onl oad = " opener.location.reload() " > 开窗时刷新
<
body onUnload
=
"
opener.location.reload()
"
>
关闭时刷新
<
script language
=
"
javascript
"
>
window.opener.document.location.reload()
</
script
>
标签:bottom,js,reload,window,html,location,大全,页面
From: https://blog.51cto.com/u_16065168/6486055