读书人

页面的定时跳转解决思路

发布时间: 2012-12-26 14:39:28 作者: rapoo

页面的定时跳转
我做的是一个网上投票的系统,投票时可以设置投票时间,超过时间就不能投票了,页面强制跳转到其他页面。这如何实现啊?
目前我用的是timer类,
public void OnTimer(Object source, ElapsedEventArgs e)
{
time--;
if (time == 0)
{
Response.Redirect("zhuye.aspx");
}
}
但是这样报错说,响应在此上下文不可用。
在网上搜了搜,有的说,要改成
public void OnTimer(Object source, ElapsedEventArgs e)
{
time--;
if (time == 0)
{
System.Web.HttpContext.Current.Response.Redirect("zhuye.aspx");
}
}
但是这样也有错,错误:未将对象引用设置到对象实例。
特来求助,有谁能帮忙给解决下。不一定必须用,timer类。只要能实现定时跳转的功能就行了。
[解决办法]


function DigitalTime1(deadline,obj)
{
deadline= new Date(deadline);
var now = new Date();
var diff = -480 - now.getTimezoneOffset() //是北京时间和当地时间的时间差
var leave = (deadline.getTime() - now.getTime()) + diff*60000
var day = Math.floor(leave / (1000 * 60 * 60 * 24))
var hour = Math.floor(leave / (1000*3600)) - (day * 24)
var minute = Math.floor(leave / (1000*60)) - (day * 24 *60) - (hour * 60)
var second = Math.floor(leave / (1000)) - (day * 24 *60*60) - (hour * 60 * 60) - (minute*60)
var strResult ="距结束还有";
if(leave<0)
{


//到时间-就跳转
location.href='zhuye.aspx';
}
else
{
strResult += day*24 + hour +"小时";
strResult += minute +"分钟";
strResult += second +"秒";
obj.innerHTML= strResult;
setTimeout(function(){DigitalTime1(deadline,obj)},1000);
}
obj.innerHTML= strResult;
}


[解决办法]
引用:
引用:

JScript code

<script type="text/javascript">
function getmessage() {
//document.getElementById("message").innerHTML = 5;
var s = document.getElementById("message").in……

母板页中的onload

protected override void Render(HtmlTextWriter writer)
{

System.IO.StringWriter sw = new System.IO.StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
base.Render(htw);
writer.Write(sw.ToString().Replace("<body", "<body onload=javascript:setup();"));
}


window.onload = function() { 

}

读书人网 >asp.net

热点推荐