Можно ли использовать JSTL для отображения даты в часовом поясе клиента? - PullRequest
3 голосов
/ 14 мая 2009

В 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"/>

Поскольку на сервере сейчас создается дата, она может не соответствовать дате клиента. Я считаю, что могу установить атрибут timeZone функции formatDate, но я не уверен, как получить часовой пояс клиента. Может кто-нибудь предложить предложение?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 14 мая 2009

Вся информация, имеющаяся на сервере, содержится в HTTP-запросе, который не содержит никакой информации о времени или часовом поясе.

Итак, у вас есть два варианта:

  • Используя cookie, вы можете сохранить часовой пояс, а затем получить его на стороне сервера. Проблема в том, что вам нужно дождаться второго запроса, чтобы использовать значение часового пояса.

  • Используя AJAX, с javascript и объектом XMLHttpRequest вы можете отправить значение 'new Date (). GetTimezoneOffset ()' на сервер, сохранить его в сеансе var

Может быть, любой из параметров слишком велик, если вы просто хотите отобразить часовой пояс

1 голос
/ 14 мая 2009

Единственный способ сделать это, не спрашивая пользователя о какой-либо информации, - отформатировать дату с помощью JavaScript. Не совсем самое красивое решение, я мог бы добавить

<script ...>document.write(<javascript to format the date>)</script>

Кроме того, вы можете рассмотреть возможность отображения часового пояса в отформатированной дате. Таким образом, пользователь, по крайней мере, знает, какой часовой пояс вы используете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...