2011-07-05 49 views
0

這可能聽起來微不足道。這是我想要的。跨時區驗證日期

我有一個名爲Date of Assessment的數據庫字段,它不應該大於今天的日期。我在html頁面執行驗證,然後將日期作爲JSON字符串發送到ASP.Net應用程序進行保存。此服務器應用程序可能駐留在不同的時區。我很明顯不得不在服務器上再次執行日期驗證。如果用戶在2009年6月20日指定日本的日期,則HTML驗證將通過。但是,當它到達美國的服務器時,日期仍然是2009年6月19日,它將會失敗。

出生日期的類似驗證。它應該驗證日期至少18歲。但是,當在網絡上顯示時,不管用戶在哪裏看到它,都應該始終顯示相同的日期。出生日期可能在日本18歲,但不在服務器中。它應該仍然存儲,但是當它顯示正確的日期時應該顯示。

這不是日期時間的問題cos我將在這種情況下使用UTC時間。

關於如何驗證,保存並顯示正確日期的任何想法?

感謝

回答

1

您可以使用使用getTimezoneOffset()首先獲得客戶的時區,併發送值回作爲PARAM。然後您的服務器端可以使用此時區偏移量進行計算。

var d = new Date(); 
alert(d.getTimezoneOffset());