Привет всем, что я делаю проверки ввода даты. Так что я не хочу принимать число 0 только в поле дня, месяца и года.
Мой формат ввода даты dd mm yyyy
, все три будут разделять компоненты ввода.
вот что я пытался остановить двумя нулями
// validation day
export function dayValidation(str) {
if(str.search(/^00/) !== -1){
return "0";
}
return extract(str, '^([0-2]?[0-9]|3[01]|10|20)$');
}
// validation month
export function monthValidation(str) {
if(str.search(/^00/) !== -1){
return "0";
}
return extract(str, '^([0-1]?[0-2]|0[1-9]|[0-9])$');
}
export function yearValidation(str) {
if(str.search(/^0/) !== -1){
return "";
}
return extract(str, '[0-9]+');
}
работает нормально, не вводя две цифры 00. но я хочу показать ошибку, если значение будет только 0.
вот что я пытался проверить:
if (Validator.isEmpty(data.applyStartYear)) {
errors.applyStartYear = APPLY_START_DATE;
}
if (Validator.isEmpty(data.applyEndYear)) {
errors.applyEndYear = APPLY_END_DATE;
}
if(!dateValidation(`${data.applyStartDay}-${data.applyStartMonth}-${data.applyStartYear}`, `${data.applyEndDay}-${data.applyEndMonth}-${data.applyEndYear}`) && !Validator.isEmpty(data.applyEndYear)){
errors.applyEndYear = DATE_MISMATCH;
}
так как это сделать. Заранее спасибо.