在我看来,我有时间显示给用户。
<h2 id="current_time">
<%= Time.now.in_time_zone(@user.time_zone).strftime("%-I:%M:%S %p") %>
</h2>
@user.time_zone
返回Pacific Time (US & Canada)
,时间显示正确。现在,我想尝试使用javascript更新此时间,以便在浏览器在此页面上保持打开状态时显示当前时间。
以下是我更新当前时间的内容,这似乎有效,但我无法弄清楚如何让它在用户的时区显示。它只是恢复到我的系统时间。
如何在考虑用户时区的情况下更新current_time
?
我尝试将@user.time_zone
传递给javascript,但它想要Area/Location
中的区域。
<script>
var current_time = setInterval(function(){system_time()},1000);
function system_time()
{
var d = new Date();
var t = d.toLocaleTimeString();
document.getElementById("current_time").innerHTML = t;
}
</script>