如何在键入时检查用户输入是否不包括任何数字



我收到了用户输入的名字

我想立即检查他输入的值,如果它小于4,我会创建一个div来保存错误

我还想检查输入是否有数字,我会创建一个div,告诉他不应该在他的名字中输入数字

这是我的Html代码第一个

<div> <label> <span> First Name:  </span>  <input type="text" name="FirstName" id = "myInput" onkeyup="myFunction()" placeholder="Enter your First Name..." /> </label> </div>

这是我的java脚本函数

function is_number(input) {
if(input === '')
return false;
let regex = new RegExp(/[^0-9]/, 'g');
return (input.match(regex) === null);
}

function myFunction() {  
const x = document.getElementById("myInput").value;
for(let i = 0; i <= x.length; i++) {
if (x.length < 4){
document.getElementById("demo").innerHTML = "You Enterd less Than 4 Numbers"
}
else if(is_number(x)) {
document.getElementById("demo").innerHTML = "First Name Should Not Have Digits in it"
}
else {
document.getElementById("demo").style.display = "none";
}
}
}

使用它来净化输入:

function isValid(input) {
let regex = /[A-Z]/i;
if(!regex.test(input)) {
document.getElementById("demo").innerHTML = "First name should not have digits in it"
}
if(input.length < 4) {
document.getElementById("demo").innerHTML = "You entered less than 4 characters"
}
}

/[A-Z]/模式只匹配字母字符,而i标志忽略字符大小写。该模式匹配空字符串和数字。当前面跟一个字母字符时,它还匹配像'这样的字符,所以像";O'brien";都很好。

相关内容

最新更新