我在我的項目中需要在客戶端數據中顯示日期。我知道屬性javascript window.navigator.userLanguage或window.navigator.language ..但它只返回客戶端機器的語言,如'en-US','en-GB'等。識別客戶端機器中的日期格式
如果用戶爲例如:-dd-MMM-yyyy自定義機器的日期格式,有什麼方法可以在Javascript中獲得該格式?
在此先感謝
suhaib
我在我的項目中需要在客戶端數據中顯示日期。我知道屬性javascript window.navigator.userLanguage或window.navigator.language ..但它只返回客戶端機器的語言,如'en-US','en-GB'等。識別客戶端機器中的日期格式
如果用戶爲例如:-dd-MMM-yyyy自定義機器的日期格式,有什麼方法可以在Javascript中獲得該格式?
在此先感謝
suhaib
可以使用.toLocaleDateString()
method:
var yourDate = new Date();
alert(yourDate.toLocaleDateString());
這不會告訴你的代碼用戶選擇的日期格式是什麼,但它可以讓你顯示一個無論用戶的格式是什麼日期。
在我的電腦上提醒「2012年6月26日,星期二」。
.toLocaleTimeString()
method在當時做同樣的事情。
.toLocaleString()
method顯示日期和時間。
不是我所知道的。系統以JavaScript的內部格式向用戶展示基礎日期/時間,而不是用戶可能選擇的格式作爲首選項。另外,確定語言/區域設置是跨瀏覽器的問題。例如,Opera在'navigator'對象的各種屬性中暴露了'en'(英文)標誌不少於3次,但不是一次'en-GB'。 – Utkanos
感謝您的信息。你有什麼替代方法建議?在Asp.net中? – Suhaib
服務器端語言從服務器獲取時間,而不是客戶端機器,所以我不會認爲這對你來說是一個很好的途徑。服務器端語言(如果瀏覽器允許的話)可以訪問瀏覽器發送的各種頭文件(瀏覽器名稱,版本等),但這不會給你任何不同的信息(我會假設)從你在導航器中得到的信息對象。 – Utkanos