2011-06-25 5 views
5

Tôi cần hiển thị ngày theo hai định dạng như dd/mm/yyyy và mm/dd/yyyy hh: mm: ss. Tôi thấy chúng ta có thể sử dụng formatoptions trong colmodelPhân loại và định dạng ngày tháng jqgrid

formatoptions: {srcformat: 'ISO8601Long', newformat: 'm/d/y'} 

formatoptions: {srcformat: 'ISO8601Long', newformat: 'm/d/y h:i:s'} 

nhưng tôi đang nhận được đầu ra trong jqGrid như mm/dd/yy. Sẽ có bất kỳ giải pháp nào để hiển thị mm/dd/yyyy. Tôi cần phải phân loại cho cả hai cột.

Cảm ơn trước

Trả lời

6

Bạn có thể sử dụng 'Y' thay vì 'y' để hiển thị các năm như 'yyyy' thay vì 'yy':

formatter:'date', formatoptions: {srcformat:'ISO8601Long', newformat:'m/d/Y H:i:s'} 

Nếu bạn muốn không có trước nulls (không có 0 padding) trong mounth và tha da bạn có thể sử dụng 'n/j/Y' thay vì 'm/d/Y'. Tất cả các cờ có thể khác nhau được hỗ trợ bởi trình định dạng 'ngày' bạn có thể tìm thấy trong the source code của trình định dạng.

CẬP NHẬT: Vấn đề là những cái tên ngắn của srcformat như ISO8601Long, UniversalSortableDateTime, ShortDate và vân vân (xem the documentation để biết chi tiết) có thể được sử dụng chỉ với dữ liệu lưới từ xa (datatype:'json' hay datatype:xml). Để làm cho việc sắp xếp cục bộ hoạt động chính xác, bạn nên sử dụng thay vì srcformat:'ISO8601Long' đến srcformat:'Y-m-d H:i:s'.

The demo cho thấy thay đổi như vậy sẽ làm cho việc sắp xếp cục bộ hoạt động chính xác.

Tôi nghĩ rằng hạn chế trong srcformat có thể được hiểu là lỗi trong jqGrid. Vì vậy, tôi khuyên bạn nên đăng báo cáo lỗi tương ứng trong the trirand forum. Sau đó, Tony Tomov (nhà phát triển của jqGrid) có thể thực hiện các thay đổi tương ứng trong mã jqGrid.

+0

thanx oleg, nhưng sắp xếp không phải là hapenning. mã colmodel của tôi là '{name:' invdate ', index:' invdate ', sorttype:' date ', format:' date ', formatoptions: {srcformat:' ISO8601Long ', newformat:' m/d/Y '}} 'và dữ liệu mảng của tôi là' {id: "1", invdate: "2007-10-01", name: "test"} '. Tôi có bỏ lỡ bất kỳ tài sản nào không? – Sabarish

+0

@ user669789: Bây giờ tôi hiểu vấn đề chính của bạn và đề nghị bạn sử dụng 'srcformat: 'Y-m-d H: i: s'' thay vì' srcformat:' ISO8601Long'' như một giải pháp. Tôi đã cập nhật câu trả lời của mình. – Oleg

+0

thanx hoạt động của nó. – Sabarish

0

Rất cám ơn rất nhiều .... Tôi đã cố kết hợp jqgrid với dữ liệu từ xa (định dạng json) và tôi muốn hiển thị định dạng ngày là dd/mm/yyyy. sau khi sử dụng các tùy chọn bên dưới

formatter: 'date', formatoptions: {srcformat: 'ISO8601Long', newformat: 'd/m/Y'}

Đó là làm việc một cách hoàn hảo.