繁体   English   中英

如何在javascript中验证范围为5-20的数字?

[英]How to validate digits only with range 5-20 in javascript?

我尝试过如下

function isValidMobileNo(mobNo) {
    var pattern = /^\d{20}$/;
    return pattern.test(mobNo);
}

if (!isValidMobileNo(temp)) {
    $("#spanRegMobNo").html("Only Numbers allowed and limit is 5-20");
    return ("Only Numbers allowed and limit is 5-20" + "\n");

} else {
    $("#spanRegMobNo").html("");
    return "";
}

但在这里我必须输入20位数,但我想给5-20范围? 又怎样?

将你的正则表达式改为

var pattern = /^\d{5,20}$/;

使用范围允许5到20位数。


我还建议在pattern属性的input元素上使用相同的正则表达式。

 input:valid { color: green; } input:invalid { color: red; } 
 <input type="text" pattern="\\d{5,20}" /> 

如果使用HTML,则可以使用输入数字标记。

<input type="number" name="quantity" min="1" max="5">

否则,在javascript中,模式“/ ^ \\ d {5,20} $ /”:)

你的问题不明确,所以这里有两个案例的2个解决方案。

如果你不想使用正则表达式,你也可以使用这个方法(它还检查它是否是数字或字符串数​​字,如: "123" ):

此示例将检查数字长度是否介于5到20之间:

function isValidMobileNo(mobNo) {
    var numLength = mobNo.toString().length;
    return (isNaN(mobNo) && numLength >= 5 && numLength <= 20);
}

这将检查数字范围是否在5到20之间:

function isValidMobileNo(mobNo) {
    return (isNaN(mobNo) && mobNo >= 5 && mobNo<= 20);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM