如何使用javascript验证电话号码

时间:2015-11-18 12:23:40

标签: javascript jquery

已经有一个用于验证电子邮件的脚本

function validateEmail(email){ 
  var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  if(re.test(email)){
    document.getElementById('email').style.borderColor ='#80c75a';
    document.getElementById('emailError').style.display = "none";
    return true;
  }else{
    document.getElementById('email').style.borderColor ='#e35152';
    return false;
  }
}

我需要一个验证电话号码的脚本。有人可以帮我这个吗?

3 个答案:

答案 0 :(得分:0)

首先,您应该检查提供的字符串是否为数字:

var isPhoneNumber = /^\d+$/.test(val);

其次你可以查看长度:

isPhoneNumber.length == indial_phone_number_lenght

然后,您可以检查该号码的前缀是否在您的可能的印度电话号码前缀数组中

答案 1 :(得分:0)

以下适用于我:

function isValidNumber(telephoneNumber){
    var validator = /(\d{3})-*(\d{8})/;
    var results = telephoneNumber.search(validator) > -1 ? true: false;

    return results;
}

如图所示here

答案 2 :(得分:0)

尝试使用它。可能这就是你想要的。

function validatePhone(phone) {
    //var re=/^(\+91-|\+91|0)?\d{10}$/;//for pattern like +91-9198387083,9198387083,09198387083
    var re = /^\d{10}$/; //for exact 10 digits
    var re1 = /^(\d{4}\s)?\d{7}$/; // for phone if you don't need space remove \s
    if (re.test(phone)) {
        document.getElementById('phone').style.borderColor = '#80c75a';
        //document.getElementById('phoneError').style.display = "none";
        return true;
    } else if (re1.test(phone)) {

        document.getElementById('phone').style.borderColor = '#80c75a';
    } else {

        document.getElementById('phone').style.borderColor = '#e35152';
        return false;
    }
}

$("#phone").on("blur", function () {
    validatePhone($(this).val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="phone" "/>

了解更多内容,您可以访问here