JS判断电话/手机的格式是否正确

有两个文本框,姓名、电话(可以输入电话,也可以输入手机号),一个查询按钮,如果输入的电话/手机的格式不正确就给用户一个提示,如果只输入了姓名,没有输入电话也可以查询成功,该怎么做?另外,如果输入的电话不全可以进行模糊查询,又该怎么做?
求代码。。。

1、首先首先,在网页中定义函数judgehandt,用于判断手机号格式是否正确,定义一个变量phone,用来保存网页中输入的手机号码。

2、用if语句判断输入的手机号码值,条件为输入的值是否为默认值号码。

3、如果条件成立,则输出您的手机号为空,提示输入手机号。

4、使用return方法,退出语句体。

5、接着,判断输入的手机号是否全是数字,与官方的手机号格式是否一致,如下图所示就完成了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-02

你可以判断位数,或者你可以将相关数字加入判断中。

/*判断输入是否为合法的手机号码*/
     function isphone2(inputString)
     {
      var partten = /^1[3,5,8]\d{9}$/;
      var fl=false;
      if(partten.test(inputString))
      {
           //alert('是手机号码');
           return true;
      }
      else
      {
           return false;
           //alert('不是手机号码');
      }
     }
     /*判断输入是否为合法的电话号码,匹配固定电话或小灵通*/
     function isphone1(inpurStr)
     {
      var partten = /^0(([1,2]\d)|([3-9]\d{2}))\d{7,8}$/;
      if(partten.test(inpurStr))
      {
           //alert('是电话号码');
           return true;
      }
      else
      {
           //alert('不是电话号码');
           return false;
      }
     }
function isok(str)
{    
if(""==str)
{    
     return false;    
}    
if(str.length!=15&&str.length!=18)
{//身份证长度不正确    
    return false;    
}    
if(str.length==15)
{    
if(!isNumber(str))
{    
  return false;    
}    
}
else
{    
str1 = str.substring(0,17);    
str2 = str.substring(17,18);    
alpha = "X0123456789";    
if(!isNumber(str1)||alpha.indexOf(str2)==-1)
{    
    return false;    
}    
}    
return true;    
}

追问

/^1\d{10}$/g || /^[+]\d{13}$/g 这样写怎么不对

本回答被提问者采纳
第2个回答  2014-03-18
手机格式验证
可以去网上找一个验证的正则表达式
模糊查询,估计要ajax
相似回答