[英]Only numbers on type text input on React.js with hooks
输入输入时,我试图避免使用任何类型的字符串。 我在这里找到了一个关于堆栈溢出的代码,它有效。 但是,它仅在先输入数字或输入字母并全部删除时才有效; 输入第一个字母时它不起作用。 而且我不太了解代码。 我什至不知道 /^[0-9\b]+$/ 是什么
这是代码
const [value, setValue] = useState();
const handleChange = (e) => {
const re = /^[0-9\b]+$/;
if (e.target.value === "" || re.test(e.target.value)) {
setValue(e.target.value);
}
};
如何测试转换为 Number 是否返回 NaN? 试试下面的代码:
const [value, setValue] = useState();
const handleChange = (e) => {
if (!isNaN(Number(e.target.value))) {
setValue(e.target.value);
}
};
而且,顺便说一句,正如原始问题下方评论中的人正确指出的那样,这: /^[0-9\b]+$/
确实是正则表达式
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.