У меня есть требование, где у меня будет 2 поля даты (to
, from
) и необходимо, чтобы проверить их:JQuery проверки даты - формат и диапазон
- являются ли они мм Формат/дд/гггг
- обе даты в определенном диапазоне
- как название
to
всегда должно быть больше, чемfrom
- оба поля становятся обязательными, как только я вхожу любой один из этих
, что будет лучший способ реализовать то же самое, я использую Validation JQuery API
Примечание: Я прочитал о проверке формата на некоторые ссылки, как jQuery Date Validation (YYYY-MM-DD) но это не делает того, чтобы его действительное дата я могу закончить ввод что-то вроде 02/31/2999
я попытался
jQuery.validator.addMethod("DateFormat", function(value, element) {
var date_regex = /^(0[1-9]|1[0-2])\/(0[1-9]|1\d|2\d|3[01])\/(19|20)\d{2}$/ ;
var values = value.split("/");
return this.optional(element) || (value.test(date_regex) && (new Date(values[2], values[0], values[1])));
});
я сделал пытался несколько решений, пожалуйста, проверьте обновленные вопросы. Все еще не удается найти полный метод доказательства, чтобы проверить действительную дату в методе mm/dd/yyyy. любая помощь pls – Varun
Если у вас возникли проблемы с проблемой 31 февраля, использование объекта Date() javascript все же помогает. После того, как вы проверили грубую проверку с вашим регулярным выражением (как указано выше), вы бросаете его в конструктор даты. Затем вы задаете дату месяца (помните, что дни и месяцы основаны на 0 в объекте Date - делает это немного сложнее, но по-прежнему выполнимо) и сравнивайте его с печатным месяцем на дату. если вы получите «feb 31» или подобное, конструктор Date заставит его перевернуться в следующий месяц, и месяцы не будут правильно выстраиваться в линию. Если у вас есть другие проблемы, пожалуйста, объясните, пожалуйста, mroe. –