javascript強制刷新頁面的(de)實現代碼

2019-09-08

JavaScript自(zì)動刷新頁面;
使用JavaScript location.reload方法刷新網頁。當用戶點擊一(yī)個鏈接此代碼可(kě)以自(zì)動在一(yī)個事件調用。
如(rú)果想使用鼠标點擊刷新網頁,可(kě)以用下面的(de)代碼:

<a href="javascript:location.reload(true)">Refresh Page</a>

banner-D.jpg


要了解它更好的(de)辦法,可(kě)以刷新頁面
自(zì)動刷新:
還可(kě)以使用JavaScript後自(zì)動給定時間段,以刷新頁面。以下是每5秒後會刷新此頁面的(de)例子(zǐ)。可(kě)以改變這個時候按您的(de)要求。

<html>
<head>
<script type="text/JavaScript">
<!--
function AutoRefresh( t ) {
 setTimeout("location.reload(true);", t);
}
//  -->
</script>
</head>
<body onload="JavaScript:AutoRefresh(5000);">
<p>This page will refresh every 5 seconds.</p>
</body>
</html>
這裏的(de) setTimeout()是一(yī)個內(nèi)置的(de)JavaScript函數,可(kě)用于給定的(de)時間間隔之後執行另一(yī)個函數。

 

javascript 強制刷新頁面的(de)實現代碼

Javascript刷新頁面的(de)幾種方法:
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

自(zì)動刷新頁面的(de)方法:
1.頁面自(zì)動刷新:把如(rú)下代碼加入<head>區域中
<meta http-equiv="refresh" content="20">
其中20指每隔20秒刷新一(yī)次頁面.

2.頁面自(zì)動跳轉:把如(rú)下代碼加入<head>區域中
<meta http-equiv="refresh" content="20;url=http://www.wansion.net">
其中20指隔20秒後跳轉到http://www.wansion.net頁面

3.頁面自(zì)動刷新js版

 

代碼如(rú)下:


<script language="JavaScript">
function myrefresh()
{
window.location.reload();
}
setTimeout('myrefresh()',1000); //指定1秒刷新一(yī)次
</script>


ASP.NET如(rú)何輸出刷新父窗口腳本語句
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(''你要刷新的(de)頁.asp'');</script>")

JS刷新框架的(de)腳本語句
//如(rú)何刷新包含該框架的(de)頁面用
<script language=JavaScript>
parent.location.reload();
</script>

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

//如(rú)何刷新另一(yī)個框架的(de)頁面用
<script language=JavaScript>
parent.另一(yī)FrameID.location.reload();
</script>

如(rú)果想關閉窗口時刷新或者想開窗時刷新的(de)話,在<body>中調用以下語句即可(kě)。

<body onload="opener.location.reload()"> 開窗時刷新
<body onUnload="opener.location.reload()"> 關閉時刷新

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

//跳出頁面
<SCRIPT LANGUAGE=JAVASCRIPT>
<!--
if (top.location !== self.location) {
top.location=self.location;
}
 

javascript 頁面隻自(zì)動刷新一(yī)次

代碼如(rú)下:

<Script>
function reurl(){
url = location.href; //把當前頁面的(de)地(dì)址賦給變量 url
var times = url.split("?"); //分切變量 url 分隔符号為(wèi) "?"
if(times[1] != 1){ //如(rú)果?後的(de)值不等于1表示沒有刷新
url += "?1"; //把變量 url 的(de)值加入 ?1
self.location.replace(url); //刷新頁面
}
}
onload=reurl
</script>
 



其他頁面刷新的(de)方式;
1.onResume()方法

       activity或fragment頁面中(簡稱原頁面)啓動新的(de)頁面(簡稱新頁面),新頁面返回時需要原頁面刷新數據,觀察他們的(de)生命周期可(kě)以看出,啓動新的(de)頁面,原頁面會依次調用onPause(), and onStop()方法,當新的(de)頁面關閉返回時,原頁面會調用onStart(),onResume(),因此把加載數據放到onResume()方法中即可(kě)

        @Override
    public void onResume() {
      super.onResume();
      getData();//加載數據
    }


.startActivityForResult方法
三種情況
a.用新頁面關閉的(de)默認碼,原頁面就刷新

設置返回碼

private int requestCode = 0X5;//返回碼大于零

啓動新頁面

startActivityForResult(new Intent(context,NewActivity.class).putExtras(bundle), requestCode);

//攜帶bundle啓動新頁面

新頁面關閉時會自(zì)動調用Activity.RESULT_CANCELED,不需要在新頁面寫結果碼代碼

原頁面刷新數據:

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    if (requestCode == this.requestCode && resultCode == Activity.RESULT_CANCELED) {
    //刷新數據
    }


b.改寫新頁面關閉時的(de)默認碼,原頁面刷新
設置結果碼為(wèi)RESULT_OK
覆寫finish( )方法

    @Override
    public void finish() {
    setResult(RESULT_OK);
    super.finish();
    }


原頁面刷新數據:

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    if (requestCode == this.requestCode && resultCode == Activity.RESULT_OK) {
    //加載數據
    }
    }


c.新頁面有特定操作,比如(rú)提交數據,原頁面才刷新數據

可(kě)以在新頁面設置requestCode,這也是最通用的(de)方法,不 累述
3.其他方法
接口回調,廣播,觀察者模式



  .net頁面刷新的(de)方式;

第一(yī):
private void Button1_Click( object sender, System.EventArgs e ) 
{
     Response.Redirect( Request.Url.ToString( ) );
}
第二:
private void Button2_Click( object sender, System.EventArgs e ) 
{
     Response.Write( "
     <script language=javascript>window.location.href=document.URL;
     </script>" );
}
第三:
private void Button3_Click( object sender, System.EventArgs e ) 
{
     Response.AddHeader( "Refresh","0" );
}
第四:
private void Button6_Click( object sender, System.EventArgs e ) 
{
     //好像有些不對?
     //Response.Write( "
     <script language=javascript>window.location.reload( );
     </script>" );
}
第五:(需替換<>)
<script><!--
var limit="3:00"
if ( document.images )
{
     var parselimit=limit.split( ":" )parselimit=parselimit[0]*60+parselimit[1]*1
}
function beginrefresh( )
{
     if ( !document.images )returnif ( parselimit==1 )window.location.reload( )else
     {
         parselimit-=1curmin=Math.floor( parselimit/60 )cursec=parselimit%60if ( curmin!=0 )curtime=curmin+"分"+cursec+"秒後重刷本頁!"elsecurtime=cursec+"秒後重刷本頁!"window.status=curtimesetTimeout( "beginrefresh( )",1000 )
     }
}
window.onload=beginrefresh//-->   </script><DIV style="Z-INDEX: 102;
LEFT: 408px;
POSITION: absolute;
TOP: 232px" ms_positioning="text2D">
<P><FONT size="3">自(zì)動刷新頁面</FONT></P>
</DIV>第六:
<meta http-equiv="refresh" content="300;
url=target.html">

用window.location.href實現刷新另個框架頁面

在寫ASP.Net程序的(de)時候,我們經常遇到跳轉頁面的(de)問題,我們經常使用Response.Redirect ,如(rú)果客戶要在跳轉的(de)時候使用提示,這個就不靈光了,如(rú):

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

這時候我們的(de)提示內(nèi)容沒有出來就跳轉了,和(hé)Response.Redirect("main.html");沒有任何區别。

這時我們采用下面代碼試驗一(yī)下:

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

這個即實現了我們的(de)要求,在提示後,跳轉頁面。

最重要的(de)是window.location.href 語句可(kě)以實現一(yī)個框架的(de)頁面在執行服務器端代碼後刷新另一(yī)個框架的(de)頁面(Response.Redirect無法達到,至少我沒有發現):

如(rú):index.htm頁面中有二個框架,分别為(wèi) frameLeft和(hé)frameRight,在frameRight頁面中執行服務器端代碼後刷新frameLeft中的(de)頁面。

先前最常見的(de)是注冊之後,自(zì)動刷新登陸框,讓登陸框換成已登陸頁面,隻要在注冊成功的(de)代碼之後加上一(yī)段,即可(kě)以實現刷新另個框架的(de)頁面。代碼如(rú)下:

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


自(zì)動刷新頁面的(de)實現方法總結:

1)
<meta http-equiv="refresh"content="10;url=跳轉的(de)頁面">
10表示間隔10秒刷新一(yī)次
2)
<script language=''javascript''>
window.location.reload(true);
</script>
如(rú)果是你要刷新某一(yī)個iframe就把window給換成frame的(de)名字或ID号
3)
<script language=''javascript''>
window.navigate("本頁面url");
</script>
4>

function abc()
{
window.location.href="/blog/window.location.href";
setTimeout("abc()",10000);
}

刷新本頁:
Response.Write("<script language=javascript>window.location.href=window.location.href;</script>")

刷新父頁:
Response.Write("<script language=javascript>opener.location.href=opener.location.href;</script>")

轉到指定頁:
Response.Write("<script language=javascript>window.location.href='yourpage.aspx';</script>")


刷新頁面實現方式總結(HTML,ASP,JS)
'by aloxy

定時刷新:
1,<script>setTimeout("location.href='url'",2000)</script>

說明:url是要刷新的(de)頁面URL地(dì)址
2000是等待時間=2秒,

2,<meta name="Refresh" content="n;url">

說明:
n is the number of seconds to wait before loading the specified URL.
url is an absolute URL to be loaded.
n,是等待的(de)時間,以秒為(wèi)單位
url是要刷新的(de)頁面URL地(dì)址

3,<%response.redirect url%>

說明:一(yī)般用一(yī)個url參數或者表單傳值判斷是否發生某個操作,然後利用response.redirect 刷新。

4,刷新框架頁
   〈script language=javascript>top.leftFrm.location.reload();parent.frmTop.location.reload();</script〉

彈出窗體後再刷新的(de)問題


Response.Write("<script>window.showModalDialog('../OA/SPCL.aspx',window,'dialogHeight: 300px; dialogWidth: 427px; dialogTop: 200px; dialogLeft: 133px')</script>");//open
             Response.Write("<script>document.location=document.location;</script>");

在子(zǐ)窗體頁面代碼head中加入<base target="_self"/>

刷新的(de)內(nèi)容加在    if (!IsPostBack) 中

在框架頁中右面刷新左面
    //刷新框架頁左半部分
    Response.Write("<script language=javascript>");
    Response.Write("parent.left.location.href='PayDetailManage_Left.aspx'");
    Response.Write("</script>");


頁面定時刷新功能實現

有三種方法:
1,在html中設置:
<title>xxxxx</title>之後加入下面這一(yī)行即可(kě)!
定時刷新:<META HTTP-EQUIV="Refresh" content="10">
10代表刷新間隔,單位為(wèi)秒

2.jsp
<% response.setHeader("refresh","1"); %>
每一(yī)秒刷新一(yī)次

3.使用javascript:
<script language="javascript">
setTimeout("self.location.reload();",1000);
<script>
一(yī)秒一(yī)次

頁面自(zì)動跳轉:
在html中設置:
<title>xxxxx</title>之後加入下面這一(yī)行即可(kě)!
定時跳轉并刷新:<meta http-equiv="refresh" content="20;url=http://自(zì)己的(de)URL">,
其中20指隔20秒後跳轉到http://自(zì)己的(de)URL 頁面。

責任編輯:中山網站建設
 【網訊網絡】國(guó)家高(gāo)新技術企業》十年(nián)專注軟件開發,網站建設,網頁設計,APP開發,小程序,微信公衆号開發,定制各類企業管理(lǐ)軟件(OA、CRM、ERP、訂單管理(lǐ)系統、進銷存管理(lǐ)軟件等)!服務熱線:0760-88610046、13924923903,http://www.wansion.net

您的(de)項目需求咨詢熱線:0760-88610046(國(guó)家高(gāo)新技術企業)

*請認真填寫需求,我們會在24小時內(nèi)與您取得聯系。