2012-02-16 1 views
1

Почему это $.datepicker.parseDate("mm/yy","02/2008"); выдает исключение InvalidDate?jQuery дата синтаксического анализа данных порождает недействительное исключение даты

+0

02/2008 isn't полная дата. Попробуйте 01/02/2008 – Stefan

+0

Возможно, он хочет 'mm/yyyy'? – Oliver

+0

http://stackoverflow.com/questions/5956766/jquery-datepicker-parsedate-on-mm-y-causing-invalid-date - Я бы указал вам на этот вопрос. Датпикер требует день и месяц по крайней мере –

ответ

1

Это потому, что в javascript объект Date также должен иметь день. Вы можете подделать этот день до 01, объединив его с той строкой, которую вы пытаетесь разобрать:

var date = $.datepicker.parseDate("mm/yy/dd", "02/2008" + "/01"); 
+0

Дело в том, что я пытаюсь отобразить сборщик данных для выбора месяца, адаптировав datapicker jQuery (http://stackoverflow.com/questions/4079525/jquery-datetime-picker-need-to-pick-month-and-year- только), и я действительно не знаю формат; все, что я знаю, это то, что у него не будет дня. Но из вашего ответа я смог выполнить var date = $ .datepicker.parseDate (format + "/ dd", date + "/ 01"); Просто оставив это здесь для дальнейшего использования. – webdreamer

+0

@webdreamer, это именно то, что я предлагал. Вот почему я намеренно разделил 2 строки в своем ответе, поскольку я думал, что первая часть является переменной. –

+0

Хорошо, спасибо за это, он отлично работает :) – webdreamer

1

Это потому, что «02/2008» не является допустимой датой и не может быть преобразовано в один из javascript.

Вам необходимо передать строку в формате, который включает как минимум день, месяц и год. См. examples для получения дополнительной информации.

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