2014-12-16 5 views
0

Почему это показывает разную дату 05/05/1972 вместо 29/05/1970?jQuery Формат даты недействителен

$(document).ready(function(){ 
    alert($.datepicker.formatDate('dd/mm/yy', new Date("29/05/1970"))); 
}); 

JSFIDDLE

+1

FYI Ваш скрипку показывает 'NaN/NaN/NaN' для меня. –

+1

Не используйте конструктор даты для разбора строк, особенно тот, который не должен поддерживаться вообще. Используйте 'new Date (1970, 4, 29)'. Разбор строк практически полностью зависит от реализации. Большинство будет ожидать, что строка в формате OP будет m/d/y. – RobG

+0

@RoryMcCrossan, проверьте эту скрипту. Firefox –

ответ

0

Попробуйте это ...

$(document).ready(function(){ 
 
    alert($.datepicker.formatDate('dd/mm/yy', new Date(1970, 5, 29))); 
 
});

+2

Проверить номер месяца ... месяцы основаны на нулевом значении ... – RobG

0

Вы должны использовать Date объект, как описано W3Schools: http://www.w3schools.com/jsref/jsref_obj_date.asp

var d = new Date(); 
var d = new Date(milliseconds); 
var d = new Date(dateString); 
var d = new Date(year, month, day, hours, minutes, seconds, milliseconds); 

Обратите внимание, что месяц и день равны 0, что означает, что месяц от 0 до 11 и даты от 0 до 6.

Спецификация можно найти здесь: http://www.ecma-international.org/ecma-262/5.1/

0

Попробуйте это:

$.datepicker.formatDate('dd M yy', new Date('29, 05, 2014'))); 
Смежные вопросы