2013-05-01 38 views
0

我有一個Web應用程序,用戶需要在文本框中獲取週數。由於用戶/客戶端機器處於不同的時區,因此他們將根據其機器日期時間獲取週數。我如何在JavaScript中調用託管服務器的日期時間。這樣我就可以將日期轉換爲一週,而不考慮客戶端機器的日期時間。如何在javascript中獲取託管服務器(LAN)日期時間

託管服務器僅在局域網中連接,無法訪問Internet。服務器端語言是PHP

請幫忙。

+0

你需要從服務器返回的時間,無論是在JS,你是服務或通過AJAX。 – Brad 2013-05-01 17:58:09

+0

服務器端語言是PHP – user220987 2013-05-01 17:58:32

+0

Hello Brad。我需要在JavaScript中。你能解釋一下嗎? – user220987 2013-05-01 18:00:35

回答

0
<html> 
<head> 
<script> 
    window.date = new Date(<?php echo time();?> * 1000); 
    window.now = new Date(); 
    window.getTime = function() { 
     var n = new Date(); 
     n = n.getTime() - window.now.getTime(); 
     return new Date(window.date.getTime() + n); 
    } 
</script> 

然後你就可以在任何地方使用window.getTime(),它使用了服務器的時間訪問+,他們是你的頁面

0

這裏多久是一個Ajax的唯一方法:

<script> 
function sTime(callback) { 
    callback=callback||alert; 
    var XHRt = new XMLHttpRequest; 
    XHRt.onreadystatechange = function() { 
     if (XHRt.readyState == 4 && XHRt.status == 200) { 
      callback(new Date(XHRt.getResponseHeader("date")) , XHRt); 
     } 
    }; 
    XHRt.open("HEAD", location.href, true); 
    XHRt.send(); 
    return XHRt; 
} /* end aHead() */ 

//demo to show remote and local times: 
sTime(function(dt){ alert([dt, new Date].join("\n"));}); 
</script> 

當我從螢火蟲跑了這裏,似乎即時通訊約1秒落後SO ...

相關問題