【发布时间】:2022-01-02 22:39:17
【问题描述】:
我有一个用户输入他的名字
我想立即检查他输入的值,如果它小于 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";
}
}
}
【问题讨论】:
-
> If it's less than 4 If it is less than 4 chars of length,你的意思是?还有更多:你可以使用
regex = new Regex(/[^0-9]/, "g"),但是形成基本的JS类型,形成性能(和理解)原因,最好直接使用regex = /[^0-9]/g之类的东西,因为新的将实例化一个对象,而不是简单的类型。 -
正是我的意思 ,,, 我想创建一个函数 1- 检查名称字段是否为空且至少 4 个字符 2-该名称字段不包含任何数字 (0- 9)当用户写他的名字时,如果用户输入了一个数字错误消息将出现,如果他删除数字,错误消息消失
标签: javascript html forms input user-input