【发布时间】:2020-02-03 13:57:20
【问题描述】:
我想制作 javascript 倒计时,它将 SQL 服务器日期时间作为结束时间,C# 日期时间作为我将从 SQL 服务器结束时间中减去的时间,这里是代码
<script>
var EndTime = @Context.Session.GetString("EndTime");
var nowtime = @DateTime.Now.ToString();
var difference = EndTime - nowtime;
var initialTime = difference ;
var seconds = initialTime;
function timer() {
var days = Math.floor(seconds / 24 / 60 / 60);
var hoursLeft = Math.floor((seconds) - (days * 86400));
var hours = Math.floor(hoursLeft / 3600);
var minutesLeft = Math.floor((hoursLeft) - (hours * 3600));
var minutes = Math.floor(minutesLeft / 60);
var remainingSeconds = seconds % 60;
if (remainingSeconds < 10) {
remainingSeconds = "0" + remainingSeconds;
}
document.getElementById('countdown').innerHTML = days + "dias " + hours + "horas " + minutes + "minutos " + remainingSeconds + "segundos";
if (seconds == 0) {
clearInterval(countdownTimer);
document.getElementById('countdown').innerHTML = "Completed";
} else {
seconds--;
}
}
var countdownTimer = setInterval('timer()', 1000);
</script>
<span id="countdown" class="timer"></span>
@Context.Session.GetString("EndTime")这是来自 SQL 服务器的日期时间
以这种方式向 Javascript 添加日期时间不起作用,需要一些帮助 THX。
【问题讨论】:
-
只是一个快速的建议;您应该考虑使用 Moment.js 在 javascript 中进行日期时间操作。
-
老实说,我没有在 1 行代码中完成它,但丢失了文件并且不记得了:(
-
您能否提供更多信息,将
console.log(EndTime)和console.log(nowtime)放入并显示它们的输出,以便我们弄清楚我们在处理什么。 -
需要更多细节。
标签: javascript c# sql-server asp.net-core