I have some TextField where the user can only enter positive digits. Right now I have this onKeyDown:
<TextField
label={distanceError}
error={!!distanceError}
defaultValue={kpoints.distance}
onBlur={handleDistanceChange}
**onKeyDown={(evt) =>
['+', '-'].includes(evt.key) && evt.preventDefault()
}**
InputLabelProps={{
shrink: true,
}}
inputProps={{
min: 0,
id: 'distance-input',
style: {textAlign: 'center'},
}}
variant="outlined"
size="small"
type="number"
aria-label="Distance in angstroms input"
></TextField>
This prevents any special characters because I do not want the user to be able to enter negative numbers.
What can I add to this to prevent the user from entering letters a-z?
Also I need to prevent it turning the number into a string once the user enters a different number.
Please help!