Дополнительно
В JavaScript: как проверить дат в формате ММ-ДД-гггг?
Я видела, как потенциальный ответ здесь, но это было на гггг-ММ-ДД: дата проверки JavaScript
Я изменил код выше На ММ-ДД-гггг, как так, но я все еще могу't получить его на работу:
String.prototype.isValidDate = function()
{
var IsoDateRe = new RegExp("^([0-9]{2})-([0-9]{2})-([0-9]{4})$");
var matches = IsoDateRe.exec(this);
if (!matches) return false;
var composedDate = new Date(matches[3], (matches[1] - 1), matches[2]);
return ((composedDate.getMonth() == (matches[1] - 1)) &&
(composedDate.getDate() == matches[2]) &&
(composedDate.getFullYear() == matches[3]));
}
Как я могу получить выше код, чтобы работать на ММ-ДД-гггг, а еще лучше ММ/ДД/гггг?
Спасибо.
34
20
Он работает. (Проверено с Firebug, отсюда и приставка.журнал().)
Эта проверка действительна дней в каждом месяце и действительного високосный год дней.
Как насчет проверки даты в "любом" в формат даты? Я'вэ был с использованием библиотеки DateJS и добавив его к существующим формам, чтобы убедиться, что я получаю допустимые даты &усилителя; раз отформатирован так, как я хочу. Пользователь может даже ввести такие вещи, как и"теперь" и "Завтра" и он будет преобразован в допустимый срок.
Здесь's в библиотеке dateJS: http://www.datejs.com/
и здесь'ы подсказка jQuery, который я написал: http://www.ssmedia.com/utilities/jquery/index.cfm/datejs.htm
Я хотел бы использовать Moment.js для этой задачи. Она делает это очень легкий для разбора даты, а также обеспечивает поддержку, чтобы обнаружить недопустимые даты<суп>1</с SUP> в правильном формате. Рассмотрим, к примеру, [этот пример](http://jsfiddle.net/ygqgz/):
Первый момент(.., форматы) используется для разбора по предоставленному локализованном формате. Тогда функция является допустимым называется на результирующий момент объект так, что мы на самом деле могу сказать, если это действительно дата.
Это может использоваться, чтобы легко извлекать метод isValidDate:
<суп>1</суп> как я могу найти дефицитные мало комментарий по этому вопросу, я бы только использовать moment.js для дат, охватываемых Григорианский календарь. Там могут быть плагины для других (в том числе исторические или научные) календари.
Я использую это регулярное выражение для проверки ММ-ДД-гггг:
Это будет соответствовать только действительные месяцев, и вы можете использовать / - или . в качестве разделителей.
Эта функция будет проверять даты, чтобы увидеть, если это's правильное или, если это's в правильном формате: ДД/ММ/гггг.
что это'т о нем? здесь'ы протестированной версии:
Вы можете упростить его, несколько изменив первые две строки функции для этого:
Или, просто измените параметр конструктору regexp Для быть
Простой способ решить
Немецкий вариант, но могут быть адаптированы к ИСО
Это для проверки строку с датой в формате ДД.мм. гггг это легко настроить его. Вам просто нужно настроить pos1 и pos2 в isValidDate().
dtCh ВАР= то ".&и"; ВАР minYear=1900;
пройти эту функцию, чтобы дата в формате //10-10-2012 и идентификатор объекта.
Пожалуйста, найдите ниже код, который позволяет осуществлять дата проверки любой из предоставленного формата или на языке пользователя, чтобы проверить пуск/и окончания/даты. Там могут быть некоторые подходы лучше но придумали это. Испытывал его на такие форматы, как: ММ/ДД/гггг, ДД/ММ/гггг, гггг-ММ-ДД, гггг.Мм. ДД, гггг/ММ/ДД или ДД-ММ-гггг.
Примечание поставляется формат даты и даты строкой идут рука об руку.
</скрипт>
Если ваша дата должна соответствовать ДД.Мм. Гггг и используется AngularJS, используйте следующий код:
Подробнее об объекте области можно найти здесь. Без в AngularJS, просто измените первую строку на:
И назвать его, используя:
Dateformat = ДД.Мм. Гггг или Д. М. гггг
попробуйте это:
Короткое и быстрое.
в
в