javascript - 如何在输入字段中只允许英文字母?
问题描述
所以,这是我的输入字段:
<input type={type} name={name} />
我怎样才能只允许英文字母?
这是RegEx
,我相信我应该使用:/[A-Za-z]/ig
https://regex101.com/r/upWFNy/1
我假设onChange()
事件应该与 和 的组合一起setState()
使用event.target.value
。
谢谢。
PS。我需要在打字时进行此操作。
解决方案
我会尝试这个onChange
功能:
onChange={(e) => {
let value = e.target.value
value = value.replace(/[^A-Za-z]/ig, '')
this.setState({
value,
})
}}
查看代码笔: https ://codepen.io/bozdoz/pen/vzJgQB
这个想法是用反转你的正则表达式匹配器^
并将所有非-Az 字符替换为''
推荐阅读
- docker - 在 VS Code 中连接到远程 Docker 容器
- c# - 如何在 Visual Studio 代码中的多个项目之间包含共享类
- scala - 如何在 GCP 中获取存储桶中的对象列表?
- java - Spring JPA延迟加载@OneToOne实体不起作用
- dexie - DexieJS 如何从一个表中获取所有内容?
- python - 如何向 Matplotlib PolyCollection 添加图例?
- html - 如何使用 MVC 制作登录界面并使用 JWT 身份验证对其进行保护?
- javascript - 表单中的 Primeng 下拉菜单
- c++ - 我可以cout但不返回为什么?请提出更改建议
- sql - ON CONFLICT upsert 的两个冲突目标