.Net刷新页面的小结
1 现在给大家讲讲在.Net中书信页面的几种方式: 2 第一: 3 private void Button1_Click( object sender, System.EventArgs e ) 4 { 5 Response.Redirect( Request.Url.ToString( ) ); 6 } 7 第二: 8 private void Button2_Click( object sender, System.EventArgs e ) 9 { 10 Response.Write( " 11 <script language=javascript>window.location.href=document.URL; 12 </script>" ); 13 } 14 第三: 15 private void Button3_Click( object sender, System.EventArgs e ) 16 { 17 Response.AddHeader( "Refresh","0" ); 18 } 19 第四: 20 private void Button6_Click( object sender, System.EventArgs e ) 21 { 22 //好像有些不对? 23 //Response.Write( " 24 <script language=javascript>window.location.reload( ); 25 </script>" ); 26 } 27 第五:(需替换<>) 28 <script><!-- 29 var limit="3:00" 30 if ( document.images ) 31 { 32 var parselimit=limit.split( ":" )parselimit=parselimit[0]*60+parselimit[1]*1 33 } 34 function beginrefresh( ) 35 { 36 if ( !document.images )returnif ( parselimit==1 )window.location.reload( )else 37 { 38 parselimit-=1curmin=Math.floor( parselimit/60 )cursec=parselimit`if ( curmin!=0 )curtime=curmin+"分"+cursec+"秒后重刷本页!"elsecurtime=cursec+"秒后重刷本页!"window.status=curtimesetTimeout( "beginrefresh( )",1000 ) 39 } 40 } 41 window.onload=beginrefresh//--> </script><DIV style="Z-INDEX: 102; 42 LEFT: 408px; 43 POSITION: absolute; 44 TOP: 232px" ms_positioning="text2D"> 45 <><FONT size="3">自动刷新页面</FONT></P> 46 </DIV>第六: 47 <meta http-equiv="refresh" content="300; 48 url=target.html"> 49 50 、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、 51 52 非模态刷新父页面:window.opener.location.reload(); 53 模态刷新父页面:window.dialogArguments.location.reload(); 54 55 先来看一个简单的例子: 56 下面以三个页面分别命名为frame.html、top.html、bottom.html为例来具体说明如何做。 57 58 frame.html 由上(top.html)下(bottom.html)两个页面组成,代码如下: 59 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 60 <HTML> 61 <HEAD> 62 <TITLE> frame </TITLE> 63 </HEAD> 64 <frameset rows="50%,50%"> 65 <frame name=top src="top.html"> 66 <frame name=bottom src="bottom.html"> 67 </frameset> 68 </HTML> 69 70 现在假设top.html (即上面的页面) 有七个button来实现对bottom.html (即下面的页面) 的刷新,可以用以下七种语句,哪个好用自己看着办了。 71 72 语句1. window.parent.frames[1].location.reload(); 73 语句2. window.parent.frames.bottom.location.reload(); 74 语句3. window.parent.frames["bottom"].location.reload(); 75 语句4. window.parent.frames.item(1).location.reload(); 76 语句5. window.parent.frames.item('bottom').location.reload(); 77 语句6. window.parent.bottom.location.reload(); 78 语句7. window.parent['bottom'].location.reload(); 79 80 top.html 页面的代码如下: 81 82 83 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 84 <HTML> 85 <HEAD> 86 <TITLE> top.html </TITLE> 87 </HEAD> 88 <BODY> 89 <input type=button value="刷新1" onclick="window.parent.frames[1].location.reload()"><br> 90 <input type=button value="刷新2" onclick="window.parent.frames.bottom.location.reload()"><br> 91 92 <input type=button value="刷新3" onclick="window.parent.frames['bottom'].location.reload()"><br> 93 <input type=button value="刷新4" onclick="window.parent.frames.item(1).location.reload()"><br> 94 <input type=button value="刷新5" onclick="window.parent.frames.item('bottom').location.reload()"><br> 95 <input type=button value="刷新6" onclick="window.parent.bottom.location.reload()"><br> 96 <input type=button value="刷新7" onclick="window.parent['bottom'].location.reload()"><br> 97 </BODY> 98 </HTML> 99 下面是bottom.html页面源代码,为了证明下方页面的确被刷新了,在装载完页面弹出一个对话框。 100 101 bottom.html 页面的代码如下: 102 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 103 <HTML> 104 <HEAD> 105 <TITLE> bottom.html </TITLE> 106 </HEAD> 107 <BODY onload="alert('我被加载了!')"> 108 <h1>This is the content in bottom.html.</h1> 109 </BODY> 110 </HTML> 111 112 113 解释一下: 114 1.window指代的是当前页面,例如对于此例它指的是top.html页面。 115 2.parent指的是当前页面的父页面,也就是包含它的框架页面。例如对于此例它指的是framedemo.html。 116 3.frames是window对象,是一个数组。代表着该框架内所有子页面。 117 4.item是方法。返回数组里面的元素。 118 5.如果子页面也是个框架页面,里面还是其它的子页面,那么上面的有些方法可能不行。 119 120 附: 121 Javascript刷新页面的几种方法: 122 1 history.go(0) 123 2 location.reload() 124 3 location=location 125 4 location.assign(location) 126 5 document.execCommand('Refresh') 127 6 window.navigate(location) 128 7 location.replace(location) 129 8 document.URL=location.href 130 131 132 133 自动刷新页面的方法: 134 1.页面自动刷新:把如下代码加入<head>区域中 135 <meta http-equiv="refresh" content="20"> 136 其中20指每隔20秒刷新一次页面. 137 138 2.页面自动跳转:把如下代码加入<head>区域中 139 <meta http-equiv="refresh" content="20;url=http://blog.sina.com/samtanjie"> 140 其中20指隔20秒后跳转到http://blog.sina.com/samtanjie页面 141 142 3.页面自动刷新js版 143 <script language="JavaScript"> 144 function myrefresh() 145 { 146 window.location.reload(); 147 } 148 setTimeout('myrefresh()',1000); //指定1秒刷新一次 149 </script> 150 151 ASP.NET如何输出刷新父窗口脚本语句 152 1. this.response.write("<script>opener.location.reload();</script>"); 153 154 2. this.response.write("<script>opener.window.location.href = opener.window.location.href;</script>"); 155 156 3. Response.Write("<script language=javascript>opener.window.navigate(''你要刷新的页.asp'');</script>") 157 158 159 JS刷新框架的脚本语句 160 161 //如何刷新包含该框架的页面用 162 <script language=JavaScript> 163 parent.location.reload(); 164 </script> 165 166 167 //子窗口刷新父窗口 168 <script language=JavaScript> 169 self.opener.location.reload(); 170 </script> 171 ( 或 <a href="javascriptpener.location.reload()">刷新</a> ) 172 173 //如何刷新另一个框架的页面用 174 <script language=JavaScript> 175 parent.另一FrameID.location.reload(); 176 </script> 177 178 如果想关闭窗口时刷新或者想开窗时刷新的话,在<body>中调用以下语句即可。 179 180 <body onload="opener.location.reload()"> 开窗时刷新 181 <body onUnload="opener.location.reload()"> 关闭时刷新 182 183 <script language="javascript"> 184 window.opener.document.location.reload() 185 </script>
庆幸的是我,一直没回头。