我有一個帶有日期列的Ext.grid。一切正常,除了日期是休息一天。extjs datecolumn顯示一天的日期
我發現,當我將數據添加到網格的商店時,值爲2013-03-31
。後來,當我看商店的數據時,數值爲Sat Mar 30 2013 17:00:00 GMT-0700 (US Mountain Standard Time)
顯然,這是一個時區問題,但我不知道如何解決它。
這裏就是我的數據添加到網格中的商店
for (var i = 0; i < dateboxes.length; i++)
{
dateboxGrid.store.add(dateboxes[i]);
//dateboxes[i].Value contains the date in this form: "2013-03-31"
}
console.log(dateboxGrid.getStore()) //logs "Sat Mar 30 2013 17:00:00 GMT-0700 (US Mountain Standard Time)"
我需要做什麼之前,我將它添加到店,以確保預期的日期顯示在列做dateboxes[i].Value
代碼?
更新
我做了以下更改。當我將日期保存到數據庫時,我首先在數據上調用.toISOString()
。現在,當數據從數據庫加載到商店中時,它將作爲GMT +0700
加載,並且日期在加載到該字段時看起來正確。
但是......恐怕這意味着它會在不同的時區出現錯誤。
我想要的全部是日期。我甚至不想記錄時間。這在我的申請中沒有意義。
我不知道很多關於ExtJS的,但我會嘗試的日期之後加入「Z」,所以,這將是其形式爲「2013- 03-31Z」。這應該導致時間被保存而沒有任何時區偏移量。參見[ISO 8601](http://en.wikipedia.org/wiki/ISO_8601#UTC)。 – 2013-04-25 21:21:40
在日期的末尾添加「Z」不起作用。 – user1304444 2013-04-25 21:26:20