Мне нужно взять значение даты из jquery datepicker, превратить его в строковый формат «MM / dd / yyyy», чтобы он мог делать правильную запись ajax. Когда страница загружается или при изменении datepicker, выполняется вызов jquery ajax.
У меня есть такой код:
var sTimestamp =
moment($("#start_ts").datepicker("getDate")).format("MM/dd/yyyy");
Но это не превращает его в «ММ / дд / гггг». Когда я использую fiddler для проверки того, что отправляется по сети, это тело:
startTimestamp=03%2FTh%2Fyyyy&endTimestamp=03%2FTh%2Fyyyy&pageSize=50&pageNum=0
Если я использую compose в fiddler и меняю тело на:
startTimestamp=03/13/2013&endTimestamp=03/14/2013&pageSize=50&pageNum=0
Я получаю правильный ответ. Итак, у меня вопрос: есть ли способ взять объект даты и отформатировать его в строку «MM / dd / yyyy» с помощью moment.js? Или что-то не так с тем, как я получаю дату из datepicker?
Кстати, я предполагаю, что datepicker.getDate возвращает объект даты, поскольку это то, что мне говорят документы jQuery.
Спасибо,
источник
Попробуй это:
var momentObj = $("#start_ts").datepicker("getDate"); var yourDate = momentObj.format('L');
источник
Использование:
Другие поддерживаемые форматы для справки:
Месяцы:
День:
Год:
источник
.format('MM/DD/YYYY HH:mm:ss')
источник