2015-09-24 35 views
0

我的服務器在格式發送日期JavaScript作爲jqGrid的按日期排序由服務器

「CSD」 的發送爲字符串: 「08-SEP-2015」

我想根據此列的日期對數據進行排序。但排序不起作用。

這裏是我的colModel

{ 
       name: 'csd', 
       index: 'csd', 
       width: 110, 
       align: 'left', 
       sorttype: 'date', 
       datefmt:'d-M-Y' 
    } 

UPDATE1:

我使用的jqGrid 4.5.4 - jQuery的電網

補充說明:我不想格式化日期,我只是希望列可以按日期排序。

UPDATE2:

我更新的定義

{ 
       name: 'csd', 
       index: 'csd', 
       width: 110, 
       align: 'left', 
       sorttype: 'date', 

       formatter:'date', 
       formatoptions:{srcformat:'d-M-Y' , newformat:'d-M-Y'} 
      } 

,但現在我得到在該領域NaN-undefined

JQgrid Sorting date on the client side with a specific format

+0

你使用哪個版本的jqGrid? – Oleg

+0

@oleg我將檢查和更新的問題,明天... – Harshit

+0

總的來說,我可以直接回答你,那我建議你使用'格式:其中指定'srcformat'和'newformat'「日期」'和'formatoptions'。你可以刪除'datefmt',在這種情況下將被忽略。它應該解決你的問題,但結果可能會有所不同,取決於你使用的是哪個版本的jqGrid。我建議你總是包含約jqGrid的使用哪種叉子信息([自由的jqGrid(https://github.com/free-jqgrid/jqGrid),[Guriddo jqGrid的JS(http://guriddo.net/ ?page_id = 103334)或版本<= 4.7的舊jqGrid)以及哪個版本。 – Oleg

回答

2

這是不好用語言特定的格式傳送數據:

標記要緊密的問題,在已答覆發現。格式d-M-Y是區域設置相關的。我不是PHP開發人員,但看到PHP有setlocale()和日期/時間函數應該取決於語言環境。以同樣的方式通過formatter: "date"使用的格式d-M-Y也依賴於語言環境,你會有不同的結果取決於您所使用的語言環境(嘗試grid.locale-de.jsgrid.locale-ru.jsgrid.locale-jp.js ANS等)。

我會建議你使用ISO 8601格式:將在簡單的情況下顯示08-SEP-2015爲2015-09-08。