2014-01-11 2 views
0

У меня есть следующие текстовое поле в моей GSP страницу, которая не работает, как ожидалось:Grails TextField с FormatDate

<g:textField name="startTime" 
    value="${formatDate(date: occurrenceStart ? new Instant(occurrenceStart).toDate() : eventInstance?.startTime, format: 'dd/MM/yyyy hh:mm a')}" 
    class="datetime" /> 

Я использую исходный код найден here, но каждый раз, когда я выбрать дату и время, дата отображается как MM/dd/yyyy. Где место, в котором мне нужно изменить формат?

EDIT: Обычно я использую Mozilla Firefox для проверки моего проекта. Если я использую браузер Google Chrome, у меня есть следующая дата форматирования (выбор 12 января 2014 года, 5:00) после изменения, предложенного в ответе Адависа:

12/Январь/20142014 чч: 01 a 05:00 Я

Если удалить добавил код, я описал то же самое поведение выше, с форматированием MM/DD/YYYY

+0

Я попробовал ваш код выше с "<г: имя = TextField" STARTTIME "значение =" $ { formatDate (дата: новая дата(), формат: 'dd/MM/yyyy hh: mm a')} "/>", и он работает. возможно, его CSS, который конвертируется в MM/dd/yyyy? – JavaDev

+0

Дело в том, что мой css (созданный мной в проекте) не имеет ничего об этом поле. Можете ли вы попытаться взглянуть на код, из которого я взял это поле (как указано в моем сообщении)? Вы уверены, что это зависит от CSS, а не от Javascript? – FrancescoDS

ответ

0

решаемые с помощью следующего кода:

function setupDatePickers() { 
$.datepicker.setDefaults({ 
    dateFormat: 'dd/mm/yy' 
}); 
$("input.datetime").datetimepicker({ 
    ampm: true, 
    stepMinute: 15 
}); 

}

1

в этом файле: https://github.com/craigburke/google-calendar-grails/blob/master/web-app/js/calendar.js, строка 60, в setupDatePickers(), что вам нужно добавьте формат даты в значения по умолчанию datetimepicker. Смотрите ниже ...

function setupDatePickers() { 
    $("input.datetime").datetimepicker({ 
     ampm: true, 
     stepMinute: 15, 
     dateFormat: 'dd/MM/yyyy hh:mm a' 
    }); 
} 
+0

Я попытался отредактировать код, как вы предлагали, но ничего не меняет. Я продолжаю видеть формат MM/dd/yyyy – FrancescoDS

+0

Если это не работает для вас, поставьте точку останова в своем коде в методе обмена в feilds javascript и посмотрите, что происходит. – brwngrldev

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