Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript检查html输入类型编号不为空,带有非数值_Javascript - Fatal编程技术网

javascript检查html输入类型编号不为空,带有非数值

javascript检查html输入类型编号不为空,带有非数值,javascript,Javascript,我试图验证html输入类型编号是否不是空的,并且只有数值。两者都必须是真实的 这不起作用,因为非数值返回空字符串 如果输入'ffff',则得到空字符串 如果该字段为空,它也会返回空字符串 现在不是node.value!==我尝试node.value.length!==0 如果我输入'ffff',我得到4 如果字段是空的,我什么也得不到 问题:如果我输入非数值(如fffff)来测试输入字段是否包含数值,您能想出一种方法来验证数字类型是否为空吗 let number = parseFloat(you

我试图验证html输入类型编号是否不是空的,并且只有数值。两者都必须是真实的

这不起作用,因为非数值返回空字符串

如果输入'ffff',则得到空字符串

如果该字段为空,它也会返回空字符串

现在不是node.value!==我尝试node.value.length!==0

如果我输入'ffff',我得到4

如果字段是空的,我什么也得不到


问题:如果我输入非数值(如fffff)来测试输入字段是否包含数值,您能想出一种方法来验证数字类型是否为空吗

let number = parseFloat(yourInput.value);
if(!isNaN(number)) {
}

取决于您想要的是十进制数parseFloat还是整数parseInt

如果输入为空,则两个函数都返回NaN

示例代码段:

let button=document.getElementById'button'; 让input=document.getElementById'input'; 按钮。addEventListener“单击”功能{ 控制台。清除; 设numberrint=parseIntinput.value,10; 如果!是Nannumberprint{ log'输入包含一个int:'+numberprint; }否则{ console.log“输入不包含int:”+numberprint; } 让numberFloat=parseFloatinput.value; 如果!是Nannumberfloat{ log'输入包含一个浮点:'+numberFloat; }否则{ console.log“输入不包含浮点:”+numberFloat; } };
选中以测试输入字段是否包含可以使用的数值

let number = parseFloat(yourInput.value);
if(!isNaN(number)) {
}

取决于您想要的是十进制数parseFloat还是整数parseInt

如果输入为空,则两个函数都返回NaN

示例代码段:

let button=document.getElementById'button'; 让input=document.getElementById'input'; 按钮。addEventListener“单击”功能{ 控制台。清除; 设numberrint=parseIntinput.value,10; 如果!是Nannumberprint{ log'输入包含一个int:'+numberprint; }否则{ console.log“输入不包含int:”+numberprint; } 让numberFloat=parseFloatinput.value; 如果!是Nannumberfloat{ log'输入包含一个浮点:'+numberFloat; }否则{ console.log“输入不包含浮点:”+numberFloat; } };
检查您应该使用| |或而不是&&AND,然后检查字符串是否为空node.value==或是否与正则表达式不匹配:

document.querySelectorinput.addEventListenerkeyup,函数{ 设node=this; 如果node.value==||!node.value.match/^\d+$/{ document.querySelectorvalid.innerHTML=无效; }否则{ document.querySelectorvalid.innerHTML=Valid; } };
您应该使用| |或而不是&&AND,然后检查字符串是否为空node.value==或是否与正则表达式不匹配:

document.querySelectorinput.addEventListenerkeyup,函数{ 设node=this; 如果node.value==||!node.value.match/^\d+$/{ document.querySelectorvalid.innerHTML=无效; }否则{ document.querySelectorvalid.innerHTML=Valid; } };
您可以使用isNaN检查空值和数字类型。这也将允许您检查浮点数

document.querySelectorinput.addEventListenerkeyup,函数{ 设node=this; 如果node.value==| | isNaNnode.value{ document.querySelectorvalid.innerHTML=无效; }否则{ document.querySelectorvalid.innerHTML=Valid; } };
您可以使用isNaN检查空值和数字类型。这也将允许您检查浮点数

document.querySelectorinput.addEventListenerkeyup,函数{ 设node=this; 如果node.value==| | isNaNnode.value{ document.querySelectorvalid.innerHTML=无效; }否则{ document.querySelectorvalid.innerHTML=Valid; } };
但是,如果输入只允许数字,为什么要检查字母?因为浏览器接受非数字输入,这会给我带来麻烦。您使用的是哪种浏览器?在这里,我的浏览器不允许我输入非数字,甚至粘贴非数字。但是,好的,下面的答案将帮助yousafari:还有Firefox,这是wontfix的一个bug,但是如果输入只允许数字,为什么要检查字母?因为浏览器接受非数字输入,这会给我带来麻烦。您使用的是哪种浏览器?在这里,我的浏览器不允许我输入非数字,甚至粘贴非数字。但是好的,下面有一些答案可以帮助yousafari:还有Firefox,它是wontfix bug,你好fragezeichen!为了更好地回答StackOverflow中的问题,请尝试添加一个代码段来显示示例代码的工作情况。要做到这一点,当你可以,你的问题,并点击按钮,似乎是这样的:你好fragezeichen!为了更好地回答StackOverflow中的问题,请尝试添加一个代码段来显示示例代码的工作情况 惯性导航与制导。要做到这一点,当您可以的时候,请输入您的问题并单击如下按钮:
let number = parseInt(yourInput.value, 10);
if(!isNaN(number)) {
}