Skip to content

Commit

Permalink
Fix input number conundrum
Browse files Browse the repository at this point in the history
  • Loading branch information
felipetovarhenao committed Sep 16, 2023
1 parent 83a645b commit a491516
Showing 1 changed file with 10 additions and 5 deletions.
15 changes: 10 additions & 5 deletions src/components/FractionalAnswer/FractionalAnswer.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ const FractionalAnswer = ({ id }: FractionalAnswerProps) => {
if (!input) {
return input;
} else {
const num = String(Number(input.replace(/\D/g, "")));
const num = String(Number(input.replace(/\D/g, ""))).slice(0, 2);
return num;
}
}
Expand All @@ -26,25 +26,30 @@ const FractionalAnswer = ({ id }: FractionalAnswerProps) => {
dispatch(questionActions.answer({ id, answer: `${num}/${den}` }));
}, [num, den]);

function omitSymbols(e: React.KeyboardEvent<HTMLInputElement>) {
if (/(\.|\-|\+|\,|\`)/.test(e.key)) {
e.preventDefault();
}
}

return (
<div className="fractional-answer">
<input
className="fractional-answer__input --numerator"
onChange={(e) => setNum(removeNonDigits(e.target.value))}
pattern="\d*"
type="phone"
value={num}
type="number"
maxLength={2}
onKeyDown={omitSymbols}
step={1}
/>
<Hr className="fractional-answer__hr" />
<input
className="fractional-answer__input --denominator"
onChange={(e) => setDen(removeNonDigits(e.target.value))}
pattern="\d*"
type="phone"
value={den}
maxLength={2}
onKeyDown={omitSymbols}
step={1}
/>
</div>
Expand Down

0 comments on commit a491516

Please sign in to comment.