ASP.NET实现无刷新倒计时功能,团购倒计时

8 篇文章 0 订阅


首先是在asp.net,html视图中添加如下主要代码:

1、ajax技术目的实现无刷新

<script type="text/javascript"> 
var WillDoXmlHttp;
function Countdown()
{
setInterval("WillDo()",1000);
}
function WillDo() 
{
createWillDoXmlHttpRequest();
var url = "CountDown.aspx";
WillDoXmlHttp.open("Get", url, true);
WillDoXmlHttp.onreadystatechange = WillDoCallback;
WillDoXmlHttp.send(null);
}

function createWillDoXmlHttpRequest() 
{
if (window.XmlHttpRequest)
{
WillDoXmlHttp = new XmlHttpRequest();

else if (window.ActiveXObject) 

try 
{
WillDoXmlHttp = new ActiveXObject("MsXml2.XmlHTTP");

catch (e1) 
{
try
{
WillDoXmlHttp = new ActiveXObject("Microsoft.XmlHTTP"); 

catch (e2) 
{} 

}
return WillDoXmlHttp; 
}
function WillDoCallback() 
{
if (WillDoXmlHttp.readyState == 4) 
{
if (WillDoXmlHttp.status == 200) 

var dbsyContent = document.getElementById("divCountDown");
dbsyContent.innerHTML = WillDoXmlHttp.responseText;
}
}
window.status="";
}
</script>

2、在body处添加调用ajax代码,目的是为了页面一加载就调用

<body οnlοad="Countdown();">

3、添加一个div,放置倒计时内容
<div id="divCountDown"></div>
其次:添加页面处理倒计时功能实现(这里新增的页面为:CountDown.aspx)

在cs页面代码中加入如下代码:

protected void Page_Load(object sender, EventArgs e)
{
ShowCountDown(GetValidDate());
}
/// <summary>
/// 得到结束时间
/// </summary>
/// <returns></returns>
private DataTable GetValidDate()
{
DataSet dsProgram = "这里是从数据库获取结束时间的代码";
return dsProgram.Tables[0];
}

private void ShowCountDown(DataTable dtEndtime)
{
//当前时间
DateTime dtStart = System.DateTime.Now;
//结束时间
DateTime dtEnd = DateTime.Parse(dtEndtime.Rows[0]["Endtime"].ToString());
//获取两个时间之间的间隔 
TimeSpan ts = dtEnd.Subtract(dtStart);
StringBuilder sbTable = new StringBuilder("<table width=100% border=0 cellpadding=0 cellspacing=\"3\" align=left>");
sbTable.Append("<tr>");
sbTable.Append("<td>");
sbTable.Append("本日学生票团购剩余时间:");
//sbTable.Append("<font color='darkred'>" + ts.Days.ToString() + "</font>天 ");
sbTable.Append("<font color='darkred'>"+((ts.Hours<10)?("0"+ts.Hours.ToString()):ts.Hours.ToString())+"</font>小时 ");
sbTable.Append("<font color='darkred'>" + ((ts.Minutes < 10) ? ("0" + ts.Minutes.ToString()) : ts.Minutes.ToString()) + "</font>分 ");
sbTable.Append("<font color='darkred'>" + ((ts.Seconds < 10) ? ("0" + ts.Seconds.ToString()) : ts.Seconds.ToString()) + "</font>秒 ");
sbTable.Append("</td>");
sbTable.Append("</tr>");
sbTable.Append("</table>");
Response.AppendHeader("Cache-Control", "no-cache");
Response.Write(sbTable.ToString());
Response.End();
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值