手机号码验证它应该只需10位数,它不应接受字符

时间:2016-04-21 07:31:45

标签: javascript java

您好团队我无法获得手机号码验证的答案? 我收到了,但它接受10位数字或不允许字符。我想要两个人一起工作

4 个答案:

答案 0 :(得分:1)

这是一个正则表达式,用于验证美国电话号码(有和没有各种标点符号,如连字符,点等)。

function telephoneCheck(str) {
  var regex = /^1?\s?\(?\d{3}\)?-?\s?\d{3}-?\s?\d{4}$/;
  var result = regex.test(str);
  return result;
}  


telephoneCheck("555555555");

它应该以这些格式验证数字:

555-555-5555
(555)555-5555
(555) 555-5555
555 555 5555
5555555555
1 555 555 5555

答案 1 :(得分:0)

<form action="post.php" method="post" id="contactform" onsubmit="return validateForm(this)">
    <ol>
        <label for="phone">Your phone <span class="red"></span></label>
        <input id="phone" name="phone" class="text" />
      </li>
    </ol>
  </form>

您可以使用正则表达式:

 phone = phone.replace(/[^0-9]/g, '');
if(phone.length == 10 || phone.length == 0) { 
   alert("success");
} else {
  alert("failure");
} 

答案 2 :(得分:0)

你的问题不明确。你已经提到你希望长度为=== 10以及要过滤的字符。

function validatePhoneNumber(number){
  var validated = true;
  if(number.length === 10) {
      validated &= true;
  } else {
      validated &= false;
  }
  if(isNaN(parseInt(number))) { 
      validated &= false;
  } else {
      if(parseInt(number).toString() === number) {  
       validated &= true;
      } else {
       validated &= false;   
      }
  }
 return validated;
}

答案 3 :(得分:0)

通常,验证电话号码比“10位且不允许使用字符”更难。

您可以使用Google库进行验证:

https://github.com/googlei18n/libphonenumber(java和javascript版本)

您只能支持您所在的国家/地区,例如来自github:

String swissNumberStr = "044 668 18 00";
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
try {
    PhoneNumber swissNumberProto = phoneUtil.parse(swissNumberStr, "CH");
} catch (NumberParseException e) {
    System.err.println("NumberParseException was thrown: " + e.toString());
}

如果你需要一个jQuery插件来获得手机输入表格的漂亮视图,那么intl-tel-input是好的。

https://github.com/jackocnr/intl-tel-input

它与Google libphonenumber兼容。