2017-09-25 20 views
0

我需要創建持續時間列。 我有幾秒鐘的持續時間,但我需要按照'H:i:s'等格式顯示時間。jQgrid guriddo - 如何創建持續時間列

當我使用日期格式化程序和有時間60秒網格顯示我的價值'01:01',但我只需要'00:01'。

是否可以在不修改或優化數據的情況下在colModel中創建持續時間列?

也許使用日期格式化程序,但自動遞減值-3600。

我的專欄設置

formatter: date 
formatoptions: 
    srcformat: "U" 
    "newformat": "H:i:s" 

我使用的jqGrid guriddo的最新版本。

UPDATE: 【參考數據:

{ 
    "page": 1, 
    "records": 3, 
    "rows": [ 
    { 
     "id": 1, 
     "name": "FIRST ROW", 
     "duration": 1139 
    }, 
    { 
     "id": 2, 
     "name": "SECOND ROW", 
     "duration": 60 
    }, 
    { 
     "id": 3, 
     "name": "THIRD ROW", 
     "duration": 15336 
    } 
    ], 
    "total": 1 
} 
+0

你能請張貼的未來形式的服務器或本地陣列示例數據? –

+0

我測試過這個,它對我來說工作正常 - 它顯示00:01:00。請讓我們知道使用Guriddo jqGrid的哪個版本exactley,如果可能,請在jsfiddle中準備一個示例,以便我們查看問題。在準備例子的時候,請使用非縮小版 –

回答

1

我看到哪裏出了問題。 jqGrid獲取本地時區並根據此轉換它。

我建議你在這種情況下使用自定義格式化程序,而不是在一個版本。所以更換格式:日期

formatter : function(val, opt, data) { 
    var offset = (new Date(val)).getTimezoneOffset(); 
    return $.jgrid.parseDate.call(this, 'U', (parseFloat(val) + offset*60), 'H:i:s'); 
} 

這種方式從任何時區的時間,用戶將看到00:01:00