一、需求
- 在文本框中输入字符,要求非字母不得输入
- 实时把输入的字母从小写自动转变成大写
二、方案
- 利用正则验证 /^[a-zA-Z]+$/.test(value)
- 用oninput事件达到实时转换
- 直接看代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<p>
请输入字符:<input type="text" value="" oninput="inputEvent(this)"/>
</p>
</body>
<script>
function inputEvent(obj) {
var value = obj.value;
var isletter = /^[a-zA-Z]+$/.test(value);
if (!isletter) {
//如果是非字母直接去掉刚输入的字符
obj.value = value.substr(0, value.length - 1);
}
obj.value = obj.value.toLocaleUpperCase();
}
</script>
</html>