从日期开始倒数计时器(从数据库中加载日期)

时间:2018-08-05 12:58:47

标签: asp.net ajax countdown

我想知道是否有一种方法可以在不使用jquery ajax的情况下从日期创建倒数计时器?我对javascript和一些c#有所了解。我有Visual Studio 2017 AJAX扩展工具,如果有帮助的话。

我想显示一个倒计时计时器,它从日期开始实时倒计时(页面的部分刷新)。

我确实知道我必须使用更新面板和脚本管理器。但是C#代码本身是什么?是否将其存储在会话变量中?

计时器在页面加载时启动。

1 个答案:

答案 0 :(得分:0)

作为基础,您可以这样做

DateTime dt = new DateTime(2018, 08, 10); // your date from the db.
TimeSpan dt2 = dt.Subtract(DateTime.Now);
// add the time remaining to a label.
lblDateDiff.Text = "Time's up in "
    + dt2.Days.ToString() + " days, "
    + dt2.Hours.ToString() + " hours, "
    + dt2.Minutes.ToString() + " minutes "
    + dt2.Seconds.ToString() + " seconds.";

那不会像计时器那样倒计时,但是如果它在Page_Load上,它将在每次加载时刷新。

如果可以选择使用JS,则可以将日期添加到页面上,并使用moment.js库:https://momentjs.com/docs/#/displaying/tonow/

对于计时器,我不确定,但是我怀疑您是否可以使用代码隐藏来做到这一点,除非您使用的是SignalR之类的polling机制。 JS的setInterval()将是最简单的。