JS 获取服务器时间

十一路 2010-04-08 02:02:33
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP") ;
xmlhttp.open("GET", "http://www.shousin.cn", false) ;
xmlhttp.setRequestHeader("Range", "bytes=-1") ;
xmlhttp.send() ;
var server_time = new Date(xmlhttp.getResponseHeader("Date")) ;
server_time = server_time.getTime();


这个代码HTML会执行,但是放到 ASP.NET 中不执行

我通过代码加载 HTML文件的。

获取服务器时间有别的好的方法吗
...全文
171 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
十一路 2010-04-08
  • 打赏
  • 举报
回复
恩 OK 了 非常感谢 结贴
Veronika 2010-04-08
  • 打赏
  • 举报
回复
xmlhttp的方法就是不断的和服务器通信,取得时间值,你的页面运行在哪台机器上,就是那台机器的时间
Veronika 2010-04-08
  • 打赏
  • 举报
回复
当然不可能获取的是本地时间,是通过xmlhttp获取的服务器时间
怎么可能不变呢?
setInterval(showServerTime,1000);
不是一秒钟去一次时间吗~~
不过那个taget()真的和这个无关,不好意思吖
十一路 2010-04-08
  • 打赏
  • 举报
回复
获取的还是本地的时间 而且 function target(){
self.parent.frames.rightFrame.location.reload();
} 没有也没关系吧
Veronika 2010-04-08
  • 打赏
  • 举报
回复
self.parent.frames.rightFrame.location.reload();
这句话你要改一下,适应你的页面你的页面有frame吗?没有的话直接reload()
十一路 2010-04-08
  • 打赏
  • 举报
回复
你这样获取的时间 固定 2010年4月8日 14:42:26 不变 怎么了
Veronika 2010-04-08
  • 打赏
  • 举报
回复
当然页面中还要包含Nowdate_label这个控件


<asp:Label ID="Nowdate_label" runat="server" Text="Nowdate"></asp:Label>
Veronika 2010-04-08
  • 打赏
  • 举报
回复
<script type="text/javascript">
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
function showServerTime()
{
xmlhttp.open("head",".",false);
xmlhttp.send(null);
document.getElementById("Nowdate_label").innerHTML=new Date(xmlhttp.getResponseHeader("Date")).toLocaleString();
}
setInterval(showServerTime,1000);
function target(){
self.parent.frames.rightFrame.location.reload();
}
</script>
指间的风 2010-04-08
  • 打赏
  • 举报
回复
写 web服务,或者 ajax 实现。

本地时间可能是不准确的, 比如2008年的时候,某位大侠打开QQ 上边提示还有1000+天才奥运会,这下你就明白了吧。


<script language="javascript">
var a = new Date()
a = <%=System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")%>;
Response.Write(a)
</script>

var a = new Date()// 是生成一个 Date类型的对象,

a = <%=System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")%>; //是将预处理指令的时间字符串赋给了变量a

Response.Write(a) //是c#的语法,你写到 javascript 里当然报错了。可以替换成 alert(a);

十一路 2010-04-08
  • 打赏
  • 举报
回复
xmlhttp.open("GET", "http://www.shousin.cn", false) ;
xmlhttp.setRequestHeader("Range", "bytes=-1") ;
xmlhttp.send() ;
var server_time = new Date(xmlhttp.getResponseHeader("Date")) ;
server_time = server_time.getTime();

这段代码 没有正常执行 HTML 的时候 没问题, .ASPX 就有问题了

获取服务器时间 有什么好方法吗
网上看了很多 其中2个简单JS获取服务器方法。不知道是不是我不会用
<script language="javascript">
var a = new Date()
a = <%=System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")%>;
Response.Write(a)
</script>
就这个方法,我代码放DREAMWEAVER直接报错。很多人转帖。应该是我不会用。怎么用
十一路 2010-04-08
  • 打赏
  • 举报
回复

<script type="text/javascript">

var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP") ;
xmlhttp.open("GET", "http://www.shousin.cn", false) ;
xmlhttp.setRequestHeader("Range", "bytes=-1") ;
xmlhttp.send() ;
var server_time = new Date(xmlhttp.getResponseHeader("Date")) ;
server_time = server_time.getTime();

var end_time = new Date("MAY 8,2010");
end_time = end_time.getTime();

var local_time = new Date();
var server_local_time = server_time - local_time.getTime();

function GetRTime(){
var NowTime = new Date();
var nMS =end_time - NowTime.getTime()+server_local_time;
var nD =Math.floor(nMS/(1000 * 60 * 60 * 24));
var nH=Math.floor(nMS/(1000*60*60)) % 24;
var nM=Math.floor(nMS/(1000*60)) % 60;
var nS=Math.floor(nMS/1000) % 60;
document.getElementById("RemainD").innerHTML=nD;
document.getElementById("RemainH").innerHTML=nH;
document.getElementById("RemainM").innerHTML=nM;
document.getElementById("RemainS").innerHTML=nS;

setTimeout("GetRTime()",1000);
}

window.onload=GetRTime;
</script>

页面代码
<div id="CountMsg">倒计时还有:<strong id="RemainD">xx</strong>天<strong id="RemainH">XX</strong>时<strong id="RemainM">XX</strong>分<strong id="RemainS">XX</strong>秒</div>
itliyi 2010-04-08
  • 打赏
  • 举报
回复
leonbingo 2010-04-08
  • 打赏
  • 举报
回复
获取服务器时间肯定是利用ajax技术往后台提交请求啊,楼主还没有说为什么不执行呢,多提供点上下文看看。
SK_Aqi 2010-04-08
  • 打赏
  • 举报
回复
同问!

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧