asp.net中客户端保持与服务器时间一致

代码是我从一个网站看到的代码改过来的。

后台代码中将服务器时间显示出来

Page.ClientScript.RegisterClientScriptBlock( this .GetType(), " time " " <script type=\ " text / javascript\ " >\r\n\tvar strTime=\ ""  + DateTime.Now.ToString( " yyyy - MM - dd HH:mm:ss " ) +  " \ " ;\r\n</script>\r\n " );

前台使用javascript进行转换

strTime = strTime.replace( / (-) / g, " / " );
var  datNow = new  Date(strTime);  
var  datLocalNow = new  Date();
datC
= datLocalNow - datNow; 
function  GetServerTime()
{
    
var datNow=new Date(new Date()-datC);        
    
var strYear=datNow.getFullYear();
    
var strMonth=datNow.getMonth()+1;
    strMonth
=strMonth<10?"0"+strMonth:strMonth;
    
var strDay=datNow.getDate();
    strDay
=strDay<10?"0"+strDay:strDay;
    
var strHour=datNow.getHours();
    strHour
=strHour<10?"0"+strHour:strHour;
    
var strMinite=datNow.getMinutes();
    strMinite
=strMinite<10?"0"+strMinite:strMinite;
    
var strSecond=datNow.getSeconds();
    strSecond
=strSecond<10?"0"+strSecond:strSecond;
    $(
"time").innerHTML=strYear+""+strMonth+""+strDay+"日 "+strHour+":"+strMinite+":"+strSecond                               
}

GetServerTime();
setInterval(
" GetServerTime() " , 1000 ); 



基于JQ的插件封装

ContractedBlock.gif ExpandedBlockStart.gif JQ
ExpandedBlockStart.gifContractedBlock.gifjQuery.fn.timer = function(o) {
    
var strTime = o.replace(/(-)/g, "/");
    
var datNow = new Date(strTime);
    
var datLocalNow = new Date();
    
var datC = datLocalNow - datNow;
    
var _obj = $(this);
    
var week = "星期日,星期一,星期二,星期三,星期四,星期五,星期六".split(",");
ExpandedSubBlockStart.gifContractedSubBlock.gif    
var getTimer = function(t) {
        
var datNow = new Date(new Date() - datC);
        
var strYear = datNow.getFullYear();
        
var strMonth = datNow.getMonth() + 1;
        strMonth 
= strMonth < 10 ? "0" + strMonth : strMonth;
        
var strDay = datNow.getDate();
        strDay 
= strDay < 10 ? "0" + strDay : strDay;
        
var strHour = datNow.getHours();
        strHour 
= strHour < 10 ? "0" + strHour : strHour;
        
var strMinite = datNow.getMinutes();
        strMinite 
= strMinite < 10 ? "0" + strMinite : strMinite;
        
var strSecond = datNow.getSeconds();
        strSecond 
= strSecond < 10 ? "0" + strSecond : strSecond;
        
var day = datNow.getDay();
        
var st = new Date(strYear, strMonth, strDay, strHour, strMinite, strSecond);        var value = strYear + "" + strMonth + "" + strDay + "日 " + strHour + ":" + strMinite + ":" + strSecond + "&nbsp;" + week[day];
        _obj.html(value);
    }
;
    getTimer();
ExpandedSubBlockStart.gifContractedSubBlock.gif    setInterval(
function() { getTimer(); }1000);
}
;

///使用方法:

$(
"#global-clock").timer("2009/01/01 00:00:00");

 

 

 

 

转载于:https://www.cnblogs.com/liydotnet/archive/2008/03/18/1111749.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值