antd input 如何限制input输入框只能输入英文或数字
时间: 2023-10-17 15:21:31 浏览: 177
使用正则限制input框只能输入数字/英文/中文等等
可以通过设置 `onKeyPress` 事件来限制输入框只能输入英文或数字。在 `onKeyPress` 事件中,我们可以通过 `event.key` 获取用户输入的字符,然后判断该字符是否为英文或数字,如果不是则阻止默认事件。
以下是一个示例代码:
```jsx
import { Input } from 'antd';
function handleKeyPress(event) {
const charCode = event.which || event.keyCode;
// 0-9 的 ASCII 码为 48-57,a-z 的 ASCII 码为 97-122,A-Z 的 ASCII 码为 65-90
if ((charCode < 48 || charCode > 57) && (charCode < 65 || charCode > 90) && (charCode < 97 || charCode > 122)) {
event.preventDefault();
}
}
<Input onKeyPress={handleKeyPress} />
```
在 `handleKeyPress` 函数中,我们首先通过 `event.which` 或 `event.keyCode` 获取用户按下的键的 ASCII 码,然后判断该字符是否为英文或数字。如果字符不是英文或数字,则调用 `event.preventDefault()` 阻止默认事件(即阻止该字符出现在输入框中)。
这样就可以限制 `antd` 的输入框只能输入英文或数字了。
阅读全文