我有这个javascript函数:
if (myform.telephone.value.length < 10){
jAlert ('Please enter at least 10 characters!',function(){$(myform.telephone).focus();});
return false;
如果用户输入少于10个字符,则会触发警报。我需要修改脚本,以便在用户输入少于10个DIGITS(0,1,2等)时弹出警报。
我该怎么做?
答案 0 :(得分:2)
更新:正如OP正确指出的那样,上一个方法中存在一个错误。我建议不要使用isNan
,因为它已被破坏。我已经更新了答案,代码如下。
这可以通过对正则表达式计算输入然后检查结果数字是否有10位或更多位来轻松完成。像:
var validate = function(){
var number = tryParseNumber(input.value);
if(number.toString().length < 10){
alert("Invalid input");
} else {
alert("Valid output: " + number);
}
};
var tryParseNumber = function (value) {
if(/^(\-|\+)?([0-9]+|Infinity)$/.test(value))
return Number(value);
return false;
}
答案 1 :(得分:1)
尝试:
function phonenumber(inputtxt)
{
var phoneno = /^\d{10}$/;
if((inputtxt.value.match(phoneno))
{
return true;
}
else
{
alert("message");
return false;
}
}
有效的电话号码 XXX-XXX-XXXX XXX.XXX.XXXX XXX XXX XXXX
function phonenumber(inputtxt)
{
var phoneno = /^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$/;
if((inputtxt.value.match(phoneno))
{
return true;
}
else
{
alert("message");
return false;
}
}
如果您想以下列方式在号码前使用+号 + XX-XXXX-XXXX + XX.XXXX.XXXX + XX XXXX XXXX 使用以下鳕鱼
function phonenumber(inputtxt)
{
var phoneno = /^\+?([0-9]{2})\)?[-. ]?([0-9]{4})[-. ]?([0-9]{4})$/;
if((inputtxt.value.match(phoneno))
{
return true;
}
else
{
alert("message");
return false;
}
}