调用
1 <div class="Orange" id="Orange"></div> 2 <script language="JavaScript"> 3 function forasp_cn_date() { 4 var datego = "<%=StaticFunction.ToStrDateTime(task.EndDate, Estatic.ForDateTime.类型八)%>"; //2018-10-09 21:35:28 5 var datetemp = (datego.replace(/:| /g, "-")).split("-"); //对日期进行分割 6 var datego_u = (new Date(Date.UTC(datetemp[0], datetemp[1] - 1, datetemp[2], datetemp[3] - 8, datetemp[4], datetemp[5]))).getTime() / 1000; 7 //将日期转换为日期戳 8 var now_u = Math.round((new Date()).valueOf() / 1000); 9 //现在的日期戳去除了毫秒 10 var forasp_cn = datego_u - now_u; 11 //获取日期差,从而计算倒计时时间www-fo-a-sp.cn 12 var day = Math.floor(forasp_cn / (24 * 3600)); 13 //计算倒计时的天数差。 14 var hour = Math.floor((forasp_cn - day * 24 * 3600) / 3600); 15 //计算倒计时的小诗差 16 var minter = Math.floor((forasp_cn - day * 24 * 3600 - hour * 3600) / 60); 17 ///计算倒计时的分钟差 18 var secound = (forasp_cn - day * 24 * 3600 - hour * 3600 - minter * 60); 19 //计算秒差 20 document.getElementById("Orange").innerHTML = ("<b>" + day + "</b> 天 <b>" + hour + "</b> 时 <b>" + minter + "</b> 分 <b>" + secound + "</b> 秒"); 21 } 22 setInterval(forasp_cn_date, 1000); 23 </script> 24 <%} %>
效果
需要定义时间“类型八”
/// <summary> /// DateTime?格式化,如何DateTime?为null返回Empty /// </summary> /// <param name="dt"></param> /// <param name="format"></param> /// <returns></returns> public static string ToStrDateTime(this DateTime? dt,DealMvc.Estatic.ForDateTime _ForDateTime) { string val = string.Empty; string format = string.Empty; switch(_ForDateTime) { case DealMvc.Estatic.ForDateTime.类型一: format = "yyyy-MM-dd HH:mm"; break; case DealMvc.Estatic.ForDateTime.类型二: format = "yyyy-MM-dd"; break; case DealMvc.Estatic.ForDateTime.类型三: format = "yyyy年MM月dd日 HH时mm分"; break; case DealMvc.Estatic.ForDateTime.类型四: format = "yyyy年MM月dd日"; break; case DealMvc.Estatic.ForDateTime.类型五: format = "yy-MM-dd HH:mm"; break; case DealMvc.Estatic.ForDateTime.类型六: format = "MM-dd HH:mm"; break; case DealMvc.Estatic.ForDateTime.类型七: format = "MM-dd"; break; case DealMvc.Estatic.ForDateTime.类型八: format = "yyyy-MM-dd HH:mm:ss"; break; } try { val = ((DateTime)dt).ToString(format,System.Globalization.DateTimeFormatInfo.InvariantInfo); } catch { } return val; }
public static class Estatic { #region pulic /// <summary> /// 时间格式 /// </summary> public enum ForDateTime { /// <summary> /// 2011-10-10 10:23 /// </summary> 类型一 = 1, /// <summary> /// 2011-12-23 /// </summary> 类型二, /// <summary> /// 2011年12月23日 10时20分 /// </summary> 类型三, /// <summary> /// 2011年12月23日 /// </summary> 类型四, /// <summary> /// 11-10-10 10:23 /// </summary> 类型五, /// <summary> /// 10-10 10:23 /// </summary> 类型六, /// <summary> /// 10-10 /// </summary> 类型七, /// <summary> /// 2011-10-10 10:23:50 /// </summary> 类型八 } #endregion }