7 × 24小时服务热线:18605391786  4000-999-221  关于我们  联系我们   付款方式  网站地图   加为收藏       
您当前的位置:首页 >  新闻中心 > 网页技巧 > 【asp】让网页在指定的几点几分几秒的时候自动刷新页面的代码

【asp】让网页在指定的几点几分几秒的时候自动刷新页面的代码 

信息来自:炫维网络    发布日期:2014-1-10   浏览次数:  

asp有没有让网页在指定的几点几分几秒的时候自动刷新页面的代码?近期本人就需要这样的一段代码,但是在网上找了很多都不能实现,现在总结下以下几个方法,留着以后用的,总结了最基本的问题,首先asp的代码如果需要在指定时间自动刷新页面的问题,就必须保证该页面在客户端打开着,才能实现,真是头疼啊。。。不说了,下面是我搜集的几个代码:
这个是不是可以在meta里面设置刷新的时间  比如以24个小时为基本  刷新的间隔为23个小时 或许25个小时
<script type="text/javascript">
        /*
        setInterval(function(){
                location.reload();
        },30000);//每五分钟刷新一次页面
        */
       
        //如果要在指定的时间刷新, 那么就需要开个定时器, 每秒执行一次, 其实就是一个倒计时
        var oEndDate = new Date();
        var oNowDate = new Date();
        var iRemain = 0;
        var timer = null;
       
        //设置结束时间
        oEndDate.setFullYear(2011, 6, 18);//指定结束的年月日(2011-7-18), 注意月份要减1, 你懂的
        oEndDate.setHours(23, 40, 50);//指定结束的时分秒(23:40:50)
       
        //剩余秒数
        iRemain = parseInt((oEndDate.getTime() - oNowDate.getTime()) / 1000);
       
        //开个定时器, 每秒执行一次
        iRemain > 0 && (timer = setInterval(count, 1000));
       
        //计算剩余时间
        function count()
        {               
                if(iRemain <= 0)
                {
                        location.reload();//到了指定时间刷新一次页面
                        iRemain = 0;
                        clearInterval(timer);//清除定时器
                }
                iRemain--;
        }       

------------------------------------------------------------------以下是另外一篇代码---------------------------------------------

面对这种情况,我们可以将实时数据显示页面DisplayMain.htm划分成左右两个框架(Frame)Fra_Left和Fra_Right。 DisplayMain.htm代码如下:
<HTML> <FRAMESET cols=“100%,*” Border=1> <FRAME NAME=“Fra_Left” scrolling=“auto”SRC=“Dis_Left.asp” noresize> <FRAME NAME=“Fra_Right”scrolling=“no” SRC=“Dis_Right.asp”> </FRAMESET> </HTML>

其中框架Fra_Left完全占据页面,而框架Fra_ Right不占据页面空间。我们可以在Fra_Left框架中显示实时数据页面,而在右面框架Fra_Right中进行实时数据处理(产生查询结果数据集,并将结果数据集作为参数传递给左侧Fra_Left框架进行数据显示),这样我们只要定时刷新右侧框架,左侧框架显示页面数据即可实时刷新,而不会出现页面闪动影响视觉效果。

Dis_Left.asp代码如下:

<%@ Language=VBScript %> <HTML> <HEAD> <META NAME=“GENERATOR” Content=“Microsoft Visual Studio 6.0”> </HEAD> <BODY> //此处可定义若干供显示实时数据的TEXT对象 <form name=“sj”> <input id=“text1” name=“text1” style=“BACKGROUND-COLOR: black; BORDER-BOTTOM-COLOR: black; BORDER-LEFT-COLOR: black; BORDER-RIGHT-COLOR: black; BORDER-TOP-COLOR: black; COLOR: white; HEIGHT: 18px; WIDTH: 81px”> …… </form> //或者定义一个可自动下载的OCX实时数据显示控件 //<OBJECT 此处定义一个可自动下载的OCX实时数据显示控件</OBJECT> </BODY> </HTML> 右侧框架Dis_Right.asp代码如下: <%@ Language=VBScript %> <HTML> <HEAD> <!--<META NAME=“GENERATOR” Content=“Microsoft Visual Studio 6.0”>--> //此处定义本页面每5秒刷新一次 <META HTTP-Equiv=“refresh” Content=“5; url=Dis_Right.asp”NAME=“GENERATOR” Content=“Microsoft Visual Studio 6.0”> </HEAD> <BODY> <% //建立数据库连接 set connectme=Server.CreateObject(“ADODB.CONNECTION”) connectme.ConnectionTimeout = 15 connectme.CommandTimeout = 30 connectme.CursorLocation = 3 connectme.Open “Provider=MSDAORA.1; Password=MYPASS; User ID=MYID; Data Source=MYSPURCE; Persist Security Info=True;User Id=MYID; PASSWORD=MYPASS;UID=MYID; DBQ=MYDBQ; DBA=W; APA=T;FEN=T; FRC=10; FDL=10; LOB=T; RST=T;FRL=F; PFC=10; TLO=0; ”,“USER”,“MYPASS” dim DataStr dim CntStr //执行SQL语句 sql = “select value from tablename ……” set rstemp = Server.CreateObject(“ADODB.RECORDSET”) set rstemp = connectme.Execute(sql) //形成实时数据参数字符串 DataStr = “” CntStr = 0 do while not rstemp.EOF DataStr = DataStr & rstemp(“val”) & “;” CntStr = CntStr + 1 rstemp.MoveNext //也可将数据直接赋值给右侧TEXT对象 //Response.Write(“<Script> parent.Left .document.sj.text1.value=‘”+val+“’</Script>”); loop rstemp.Close %> <SCRIPT LANGUAGE=VBScript> //传递参数给右侧页面 parent.Left.document.控件名 “<% =DataStr%>” </SCRIPT> <% end if %> </BODY> </HTML>

经过这样设计的实时数据浏览页面,避免了页面刷新带来的闪动问题,使页面更加稳定美观。在生产企业站点、股市汇市查询、模拟图形设计等应用实践中,取得了良好的效果。

方案2XMLHTTP无刷新自动实时更新数据传统上,我们浏览网页,如果加入最新的数据.只能是等我们重新向服务器端请求时才能显示出来.但是,对于一些时效性很强的网站.传统的这种做法是不能满足的. 我们可以让程序自动刷新.定时向服务器请求数据.5秒取一次数据,10秒取一次数据.利用XMLHTTP发出请求并取得数据.传到客户端,客户端重新组织并显示数据.demo.htm 前台显示.<script language="JavaScript">function GetResult(){/**--------------- GetResult() -----------------* GetResult() * 功能:通过XMLHTTP发送请求,返回结果.* 参数:str,字符串,发送条件.* 实例:GetResult();*--------------- GetResult() -----------------*/var oBao = new ActiveXObject("Microsoft.XMLHTTP");//特殊字符:+,%,&,=,?等的传输解决办法.字符串先用escape编码的.//Update:2004-6-1 12:22oBao.open("POST","Server.asp",false);oBao.send();//服务器端处理返回的是经过escape编码的字符串.var strResult = unescape(oBao.responseText);//将字符串分开.var arrResult = strResult.split("###");RemoveRow(); //删除以前的数据.//将取得的字符串分开,并写入表格中.for(var i=0;i<arrResult.length;i++){arrTmp = arrResult[i].split("@@@");num1 = arrTmp[0]; //字段num1的值num2 = arrTmp[1]; //字段num2的值row1 = tb.insertRow();cell1 = row1.insertCell();cell1.innerText = num1;cell2 = row1.insertCell();cell2.innerText = num2;}}function RemoveRow(){//保留第一行表头,其余数据均删除.var iRows = tb.rows.length;for(var i=0;i<iRows-1;i++){tb.deleteRow(1);}}function MyShow(){//2秒自动刷新一次,2秒取得一次数据.timer = window.setInterval("GetResult()",2000);}</script><body onload="MyShow()"><p></p><table width="47%" height="23" border="0" cellpadding="1" cellspacing="0" id="tb"><tr><td>num1</td><td>num2</td></tr></table>Server.asp 后台读取数据<% @Language="JavaScript" %><%function OpenDB(sdbname){/**--------------- OpenDB(sdbname) -----------------* OpenDB(sdbname) * 功能:打开数据库sdbname,返回conn对象.* 参数:sdbname,字符串,数据库名称.* 实例:var conn = OpenDB("database.mdb");*--------------- OpenDB(sdbname) -----------------*/var connstr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="+Server.MapPath(sdbname);var conn = Server.CreateObject("ADODB.Connection");conn.Open(connstr);return conn;}var sResult = new Array();var oConn = OpenDB("data.mdb");//特殊字符:+,%,&,=,?等的传输解决办法.客户端字符是经过escape编码的//所以服务器端先要经过unescape解码.//Update:2004-6-1 12:22var sql = "select num1,num2 from nums order by id";var rs = oConn.Execute(sql);while(!rs.EOF){//一条记录用"###"隔开.每列数据用"@@@"隔开. 这是以只有两个列数据的情况.sResult[sResult.length] = rs("num1").Value + "@@@" + rs("num2").Valuers.MoveNext();}//escape解决了XMLHTTP。中文处理的问题.Response.Write(escape(sResult.join("###")));%>数据库data.mdb表 numsid,自动编号num1,文本num2,文本测试数据id num1 num21 20.70 20.8102 10.5 20.53 12.3 3004 132 3235 563 566 20 10
</script>

做服务最好的网络公司:临沂网络公司http://www.a539.com
更多
临沂网站建设豪华团队!www.a539.com
临沂网络公司

炫维网络 www.a539.com
建站咨询电话:18605391786  邮箱:123@A539.com  
地址:山东省临沂市兰山区通达路367号 裕城大厦