diff --git a/src/DateInput.tsx b/src/DateInput.tsx index b0774f11..792f97b9 100644 --- a/src/DateInput.tsx +++ b/src/DateInput.tsx @@ -423,7 +423,7 @@ export default function DateInput({ * However, given 2, smallers possible number would be 20, and thus keeping the focus in * this field doesn't make sense. */ - if (Number(value) * 10 > Number(max) || value.length >= max.length) { + if (Number(value) && (Number(value) * 10 > Number(max) || value.length >= max.length)) { const property = 'nextElementSibling'; const nextInput = findInput(input, property); focus(nextInput); @@ -485,16 +485,17 @@ export default function DateInput({ event: React.ChangeEvent | React.ChangeEvent, ) { const { name, value } = event.target; + const correctedValue = value && parseInt(value, 10).toString(); switch (name) { case 'year': - setYear(value); + setYear(correctedValue); break; case 'month': - setMonth(value); + setMonth(correctedValue); break; case 'day': - setDay(value); + setDay(correctedValue); break; }