以下是我的一段代码,它检查输入格式是否是来自表单输入的EMAIL并相应地验证我想知道如何修改以下代码验证输入是否仅为数字
if(email.length == 0 || email.indexOf('@') == '-1'){
var error = true;
$('#email_error').fadeIn(500);
}else{
$('#email_error').fadeOut(500);
}
答案 0 :(得分:2)
答案 1 :(得分:2)
if (email.match(/[0-9]+/)) {
//it's all numbers
}
修改强>
正如评论中所提到的,为确保条目是所有数字,正则表达式必须包含开头和结尾字符^
和$
:
if (email.match(/^[0-9]+$/)) {
//it's all numbers
}
或者更简洁:
if (email.match(/^\d+$/)) {
//it's all numbers
}
我不值得为此修复而感到荣幸,但我确实想为那些可能会在以后找到它的人纠正它。
答案 2 :(得分:1)
检查将电子邮件地址转换为Number对象是否返回“Not a Number”值;如果没有,输入是一个数字。代码如下所示:
if(!isNaN(Number(email)) {
答案 3 :(得分:1)
我会用:
if(isNaN(email*1)){
//evaluated to NaN
}else{
//evaluated to number
}
在这种情况下,(email*1)
有可能评估为NaN
,因此检查失败,因为错误值列表为0,"",false,null,undefined,NaN