java - 是否可以使用 JSTL 来显示客户端时区中的日期?

标签 java javascript date jstl

在 Javascript 中,我有这个函数可以在页眉上显示当前日期:

<SCRIPT language="Javascript">
    var today = new Date();
    document.write(today.toLocaleDateString());
</SCRIPT>

我想通过 JSTL 来做到这一点,但我不确定是否可行。到目前为止,我有这段代码:

<jsp:useBean id="date" class="java.util.Date" />
<fmt:formatDate value="${date}" type="date" pattern="EEEE, MMMM dd, yyyy"/>

因为现在正在服务器上创建日期,所以它可能不代表客户端的日期。我相信我可以设置 formatDate 函数的 timeZone 属性,但我不确定如何获取客户端的时区。有人可以提供建议吗?

谢谢!

最佳答案

服务器拥有的所有信息都在不包含任何关于时间或时区的信息的 HTTP 请求中。

所以你有两个选择:

  • 使用 cookie,您可以存储时区,然后在服务器端检索它。这里的问题是您必须等待第二个请求才能使用时区值。

  • 使用 AJAX、javascript 和 XMLHttpRequest 对象,您可以将“new Date().getTimezoneOffset()”值推送到服务器,将其存储在 session 变量中

如果您只想显示时区,可能任何选项都太多了

关于java - 是否可以使用 JSTL 来显示客户端时区中的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/864713/

相关文章:

java - Spring - ModelAttribute 和参数名称

java - 从 firebase 获取特定类别的数据

javascript - SAP UI5 中未填充下拉列表

javascript i++ 与++i

javascript - Recaptcha 不显示在 ipad 到移动设备上

BASH 脚本按日期排序

java - 尝试使用媒体播放器时应用程序构造函数中出现异常

mysql - PHP 上传 CSV 并注入(inject)现有的 mySQL 表日期格式

javascript - 使用 Angular 和 Javascript 过滤器转换特定军事时间

java - 在客户端保存用户偏好设置