【发布时间】:2011-04-21 10:02:04
【问题描述】:
我想在 Javascript 中设置不同的时区。目前它显示的是本地机器或客户端 PC 日期/时区的日期和时区。
问候,
【问题讨论】:
标签: javascript timezone
我想在 Javascript 中设置不同的时区。目前它显示的是本地机器或客户端 PC 日期/时区的日期和时区。
问候,
【问题讨论】:
标签: javascript timezone
Javascript 是一种客户端语言,不会以这种方式与服务器交互。您需要从服务器端平台获取该数据。
这里有一些 PHP 代码来获取您正在寻找的数据。你要么需要把它放在你的页面中,然后将结果回显到一个 JS 变量中......
<?php
$date = new DateTime(null, new DateTimeZone('Europe/London'));
$tz = $date->getTimezone();
$tzone = $tz->getName();
?>
<script type="text/javascript">
var timeZone='<?php echo $tzone ?>';
</script>
....或者保持 PHP 页面独立,并使用 AJAX 获取数据
getTimeZone.php
<?php
$date = new DateTime(null, new DateTimeZone('Europe/London'));
$tz = $date->getTimezone();
echo $tz->getName();
?>
JS
var timeZone=null;
$.get('getTimeZone.php', function(result){
timeZone=result;
}, 'html');
//I know this is jQuery, not JS, but you get the idea.
【讨论】:
Michael Koper。我自己也在想同样的事情。
JavaScript 中没有内置功能可以做到这一点。
您可以在从服务器呈现时将时区嵌入(例如)页面上的隐藏字段,或者实现某种 http 请求以主动从服务器检索它。
【讨论】:
这样做的唯一方法是在服务器的响应中包含时区,或者从 javascript 浏览器客户端向服务器发出 ajax 调用以获取服务器的时区。
【讨论】: