Javascript 如何阻止用户添加+;或-在react js的输入字段中?
基本上,输入字段应该只接受Javascript 如何阻止用户添加+;或-在react js的输入字段中?,javascript,reactjs,input,numbers,Javascript,Reactjs,Input,Numbers,基本上,输入字段应该只接受1-999值 输入字段: <input type="number" value={value} onChange={this.props.onViltMaxUserChange} min="0" max="999" /> 但用户可以添加----或+++ 当用户输入+或-时,不会触发onChange。 我不想让用户输入这些 我如何才能做到这一点?您可以使用正则表达式验证输入值 /^[0-9]{1,3}$/.test(value)在onK
1-999
值
输入字段:
<input
type="number"
value={value}
onChange={this.props.onViltMaxUserChange}
min="0"
max="999"
/>
但用户可以添加----或+++
当用户输入+或-
时,不会触发onChange。
我不想让用户输入这些
我如何才能做到这一点?您可以使用正则表达式验证输入值
/^[0-9]{1,3}$/.test(value)
在onKeyUp
事件中。这是否回答了您的问题?添加此事件:-onKeyDown={(evt)=>[“e”,“e”,“+”,“-”]。包括(evt.key)和&evt.preventDefault()
onViltMaxUserChange = _.throttle(e => {
let { value, min, max } = e.target;
if (value !== '' && !(_.inRange(value, min, max))) return false
this.setState({ value: value });
}, 50);