2015-06-28 2 views
0

Довольно простой вопрос, как я могу проверить дату и время, поэтому ввод является как правильным, так и допустимым числом в отличие от 2015-02-30 ....Подтвердить дату-время, используя: Y-m-d H: m: s в javascript

2015-06-28 16:06:35 //Valid 
+0

вы можете проанализировать его с помощью объекта Date, подкрепить результат, а затем сравнить оригинал с результатом. Если вы установите слишком высокое значение в Date, оно перевернется, поэтому результат должен отличаться от оригинала. Проверьте страницы MDN на объекте Date. –

+0

Вы пытались использовать объект Date i.e.dt = new Date ('2015-06-28 16:06:35') ;. Все, что недействительно, вернется с ошибкой. – jeff

ответ

1

Попробуйте использовать moment.js. Это неплохо вносить что-то вроде даты и разбирать его во что-то полезное. Он также имеет метод isValid для определения того, удалось ли lib проанализировать введенный им ввод даты.

http://momentjs.com/docs/#/parsing/is-valid/

var feb30 = moment('2015-02-30'); 
 
var jun28 = moment('2015-06-28'); 
 

 
str = "Feb 30: " + feb30.isValid(); // false 
 
str += "\nJun 28: " + jun28.isValid(); // true 
 

 
alert(str);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment-with-locales.min.js"></script>

0

Если вы var d = new Date('2015-02-30'), он будет пролонгировать и вернуть дату 2015-03-02. Итак, если вы сравните строки этих значений, они будут неравными.