如何在JQGrid中格式化文化日期?

时间:2013-02-21 07:08:49

标签: jquery jqgrid

JQGrid支持多语言。这还包括日期。我已经格式化了大部分日期,但在保加利亚日期面临问题。因为他们有日期和时间,如21.12.2001 r 18:12:30 u。现在,我面临的问题是在显示的日期得到你和你。韩国也有同样的情况。

输入格式为'ISO8601Long'所以我需要在JQGrid中使用newformat,它允许额外的r和u。另外我得到的格式。

我在显示网格数据时遇到问题。它不是编辑模式。

如果需要进一步的细节,请告诉我。您可以查看保加利亚文化here的详细信息。

1 个答案:

答案 0 :(得分:1)

您可以使用Globalize jQuery plugin。我从the answer修改了演示。 The demo演示了您的要求的一种可能实现方式。

enter image description here

我使用了以下

formatter: function (cellvalue) {
    // we don't use time zones information in the code below
    var dMatch = cellvalue.match(new RegExp("([0-9]{4})(-([0-9]{2})(-([0-9]{2})" +
            "(T([0-9]{2}):([0-9]{2})(:([0-9]{2})(.([0-9]+))?)?" +
            "(Z|(([-+])([0-9]{2}):([0-9]{2})))?)?)?)?")),
        date = new Date(
            Number(dMatch[1] || 0),   // year
            Number(dMatch[3] || 0)-1, // month
            Number(dMatch[5] || 0),   // day
            Number(dMatch[7] || 0),   // hours
            Number(dMatch[8] || 0),   // minutes
            Number(dMatch[10] || 0),  // seconds
            Number(dMatch[12] || 0)
        ); // milliseconds

    return Globalize.format(date, "F");
},
unformat: function (v) {
    return Globalize.parseDate(v);
}