利用js获取服务器时间的两个简单方法

JavaScript09

利用js获取服务器时间的两个简单方法,第1张

有时用js来获取服务器时间。一般会用System.DateTime

方法如下:

复制代码

代码如下:

<script

language="javascript">

var

a

=

new

Date()

a

=

<%=System.DateTime.Now.ToString("yyyy-MM-dd

HH:mm:ss")%>

Response.Write(a)

</script>

其实还有一个方法:利用javascript的“runat="server”属性

代码

复制代码

代码如下:

<script

runat="server"

language="javascript">

var

a

=

new

Date()

a

=a.getFullYear()+

"-"+(a.getMonth()+1)+"-"+a.getDate()+"

"+a.getHours()+":"+a.getMinutes()

Response.Write(a)

</script>

助人等于自助!

正如楼上所说的,js只能操作客户端的东西。在客户端时刻显示并更新服务器的时间应该是不可能的,因为会由于网络延迟的因素使得时间不精确。

打个比方,可以使用ajax每秒钟获取服务器的时间,然后再显示出来,但是可能这个用户的网络延迟比较厉害,他请求的这个时间过了两三秒才返回给客户端,那这样更新时间就不精确了。

也可以这样,第一次从服务器那里获取时间,然后再客户端用js,每秒累加数,就是以获取服务器的那个时间为起掉,用客户端代码每秒累加这个时间

不一样。

不同的设备,本地的系统时间是不一样的,假如你电脑设定的时间是9:00那么js获取的就是9:00但是如果此时别人的电脑时间是10:00在别人的电脑上js获取的时间就是10:00。

s是客服端脚本,是不能直接获取服务器端的时间的,除非你用asp,或者jsp,php,等写一个动态的js脚本。