reload 方法,方法強迫瀏覽器重新整理目前頁面。
語法:location.reload([bForceGet])
參數:bForceGet, 可選參數, 預設為false,從客戶端快取取目前頁。 true, 則以GET 方式,從服務端取最新的頁面, 相當於客戶端點擊F5("刷新")
replace 方法,該方法透過指定URL取代目前快取在歷史裡(客戶端)的項目,因此當使用replace方法之後,你不能透過「前進」和「後退」來存取已經被替換的URL。
語法: location.replace(URL)
在實際應用的時候,重新刷新頁面的時候,我們通常使用: location.reload() 或是history.go(0) 來做。因為這種做法就像是客戶端點F5刷新頁面,所以頁面的method="post"的時候,會出現"網頁過期"的提示。那是因為Session的安全保護機制。可以想到: 當呼叫location.reload() 方法的時候, aspx頁面此時在服務端記憶體裡已經存在, 因此必定是IsPostback 的。如果有這種應用: 我們需要重新載入該頁面,也就是說我們期望頁面能夠在服務端重新被創建, 我們期望是Not IsPostback 的。這裡,location.replace() 就可以完成此任務。被replace的頁面每次都會在服務端重新產生。
你可以這麼寫: location.replace(location.href);
返回並刷新頁面:
location.replace(document.referrer);
document.referrer //前一個頁面的URL
不要用history.go(-1),或history.back();來返回並刷新頁面,這兩種方法不會刷新頁面。
附:
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=//www.VeVB.COm">
其中20指隔20秒後跳到//www.VeVB.COm頁面
3.頁面自動刷新js版
複製代碼代碼如下:
<script language="JavaScript">
function myrefresh()
{
window.location.reload();
}
setTimeout('myrefresh()',1000); //指定1秒刷新一次
</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>