2013-02-21 5 views
1

JQGrid поддерживает многоязычность. Это также включает даты. Я отформатировал большую часть даты, но столкнулся с проблемой на болгарской дате. Поскольку они имеют дату и время, например, 21.12.2001 г. 18:12:30. Теперь я столкнулся с проблемой, чтобы получить это значение r и u в день, когда он отображается. Тот же случай с Кореей.Как отформатировать дату культуры в JQGrid?

Формат ввода: «ISO8601Long», поэтому мне нужен новый формат в JQGrid, который позволяет использовать дополнительные r и u. Еще я получаю формат.

Я столкнулся с проблемой при отображении данных сетки. Это не режим редактирования.

Пожалуйста, дайте мне знать, если потребуется какая-либо дополнительная информация. Вы можете узнать подробности о культуре Болгарии here.

+0

У вас есть проблемы для отображения даты/DateTime в jqGrid или в JQuery UI. Пример '21.12.2001 r 18:12:30 u' содержит дату и время вместо даты. jQuery UI Datepicker поддерживает только ** дату без времени **. Не могли бы вы более точно описать проблему? Вы хотите отображать или редактировать дату/дату? Каков исходный формат даты? Используете ли вы локальный тип данных для получения данных с сервера (например, datetype: «json»)? – Oleg

+0

@Oleg у нас есть дата и время для JQGrid и только дата в JQueryUI date picker. Текущий формат ввода для даты - ISO long. – kunjee

+0

** Вы хотите отображать или редактировать дату/дату? ** Я до сих пор не понимаю, какое отношение имеет JQueryUI datepicker к проблеме, как отображать дату и время. – Oleg

ответ

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); 
} 
+0

человек ... Большое спасибо ... Шляпы от вас .. – kunjee

+0

@kunjee: Добро пожаловать! – Oleg

Смежные вопросы