[英]jquery.countdown in asp.net
有没有人在asp.net中使用jquery.countdown有经验?
在后面的代码中,我设置了这样的日期
public string datostreng;
protected void Page_Load(object sender, EventArgs e)
{
string format = "ddd MMM d yyyy HH:mm:ss";
DateTime _tempdato = DateTime.Now.AddDays(1);
datostreng = _tempdato.ToString(format);
}
在.aspx页上,我有
<script type="text/javascript">
$(function () {
var dato = new Date();
dato = '<%=datostreng %>';
$('#defaultCountdown').countdown({ until: dato, format: 'HMS' });
//alert(dato);
});
计数器显示正常,但从34分56秒开始倒计时,很奇怪。在我的示例中,该计数器应从24小时开始倒计时。
在原始的jquery.countdown示例中,它们的日期格式如下:Thu Jan 26 2012 00:00:00 GMT + 0100
在我的示例中,它看起来像这样:fr jan 28 2011 09:50:43
因此,我想问题是,如何在C#中产生一个满足jquery.countdown函数的日期?
当您将日期分配给javascript中的变量时,您需要使用:
var dato = new Date('<%=datostreng%>');
完成此操作的方式是,变量包含字符串,而不是日期。 因此,只需替换这两行就可以了。
您可以利用JavaSript将Date保留为自1970/01/01开始的毫秒数这一事实。 将其放在您的代码后面:
private static DateTime _jsDateBoundary = new DateTime(1970, 1, 1, 0, 0, 0);
public Int64 GetCountdownMilliseconds()
{
DateTime countdownDeadline = DateTime.Now.AddDays(1).ToUniversalTime();
return (Int64)countdownDeadline.Subtract(_jsDateBoundary).TotalMilliseconds;
}
在.aspx页上输入以下内容:
$(document).ready(function () {
$('#defaultCountdown').countdown({ until: new Date(<%= GetCountdownMilliseconds() %>), format: 'HMS' });
});
它会工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.