[英]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.