gpt4 book ai didi

javascript - 在 Rails 中制作日期时间倒计时器

转载 作者:行者123 更新时间:2023-12-03 05:03:38 25 4
gpt4 key购买 nike

你好,我很快就要制作这个日期时间计数器了。我假设因为我在代码中使用 date new Date 我无法让代码正常工作?我应该使用 date datetime time 吗?当我进行“puts”#{reservation.due_date}”时,我得到了正确的到期日期,所以我很困惑为什么计数器不工作。

 

<div id="dueDate-counter">
<table>
<tr>
<td>days</td>
<td>hrs</td>
<td>mns</td>
<td>secs</td>
</tr>
<tr>
<td id="days"></td>
<td id="hours"></td>
<td id="minutes"></td>
<td id="seconds"></td>
</tr>

</table>

<script type="text/javascript">
function countdown() {
var now = new Date();
var eventDate = new Date(<%= reservation.due_date %>);
<%= puts "here is reservation !!!!!!!" %>;
<%= puts "#{reservation.due_date}" %>;
var currentTime = now.getTime();
var eventTime = eventDate.getTime();

var remTime = eventTime - currentTime;

var s = Math.floor(remTime / 1000);
var m = Math.floor(s / 60);
var h = Math.floor(m / 60);
var d = Math.floor(h / 24);

h %= 24;
m %= 60;
s %= 60;

h = (h < 10) ? "0" + h : h;
m = (m < 10) ? "0" + m : m;
s = (s < 10) ? "0" + s : s;

document.getElementById("days").textContent = d;
document.getElementById("days").innerText = d;

document.getElementById("hours").textContent = h;
document.getElementById("minutes").textContent = m;
document.getElementById("seconds").textContent = s;

setTimeout(countdown, 1000);
}

countdown();

</script>

</div>

在查看页面时,我在 小时 内显示空白数据。在 script 的开头附近添加了 eventDate 我将 due_date 作为新日期放入。现在记住它是 DateTime 格式,所以它数据库中有小时分钟秒。那么这不是因为我创建了new Date而没有读取吗?有一个datetime吗?谢谢!!

reservation.due_date 显示在数据库中作为示例:2017-02-09 00:02:00

最佳答案

您只需要用报价包装到期日期的输出

var eventDate = new Date("<%= reservation.due_date %>");

如果不这样做,您将在控制台浏览器上收到此错误

未捕获的语法错误:参数列表后缺少 )

关于javascript - 在 Rails 中制作日期时间倒计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42103306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com