简体   繁体   English

使用javascript验证电话号码

[英]Phone Number validation using javascript

I have an application form in php.. I need to validate the phone number.. Please tel me how to validate a phone no. 我在php中有一份申请表。.我需要验证电话号码..请给我打电话如何验证电话号码。 Here is the code.. 这是代码。

$(function() {
        $("#XISubmit").click(function(){

var XIPhone= document.forms["XIForm"]["XIPhone"].value;
    if (XIPhone==null || XIPhone=="") { alert("Please Enter Office Phone No"); return false; }

document.getElementById("XIForm").submit();
        }); 


<div class="formItem">
            <label>Office Phone No</label>
            <input type="text" name="XIPhone" id="XIPhone" />
        </div>

    <div class="formItem">
            <input type="hidden" name="formType" id="formType" value="XI" />
            <input type="button" name="XISubmit" id="XISubmit" value="Submit"          class="formButton" />
        </div>

        </form>

    </div>

Here are some regular expression formats : 以下是一些正则表达式格式:

Phone Number (Format: +99(99)9999-9999) - [\+]\d{2}[\(]\d{2}[\)]\d{4}[\-]\d{4}  
UK Phone Number - ^\s*\(?(020[7,8]{1}\)?[ ]?[1-9]{1}[0-9{2}[ ]?[0-9]{4})|(0[1-8]{1}[0-9]{3}\)?[ ]?[1-9]{1}[0-9]{2}[ ]?[0-9]{3})\s*$  
USA Phone Number -  US based Phone Number in the format of: 123-456-7890 - \d{3}[\-]\d{3}[\-]\d{4}
var data = yourdata;
var re = /^\d{10}$/;    //user regular expression (this example is used to check 
                        // validation for 10 numbers or digits).
var a = data.match(re);
if(a == null)
{

   //show error message

}
else
{
   //no error
}
  • Use regular expression 使用正则表达式
  • Format of Phone numbers and landline numbers will change based on country 电话号码和座机号码的格式将根据国家/地区而变化

A simple case: 一个简单的例子:

<script type="text/javascript">  
      var reg = /^\d{10}$/;  
      function PhoneValidation(phoneNumber)
      {  
        return reg.test(phoneNumber);
      }  
</script>

Try this: 尝试这个:

function checkForNumber(number, size) {
    var nbrString = '';
    for (var i = 0; i < number.length; i++) {
        var cc = number.charCodeAt(i);
        if (cc >= 48 && cc < 58) {
            nbrString += number[i];
        }
    }
    return nbrString.length === size;
}

Usage: 用法:

var paramA = "012 345 67 89";
var paramB = 10;
checkForNumber(paramA, paramB);

paramA: your number to check in string format paramA:您要检查的数字以字符串格式

paramB: the size of the number digits (normally it's 10) paramB:数字位数的大小(通常为10)

You can modify the return parameter in the 'checkForNumber' function to fit your needs. 您可以在'checkForNumber'函数中修改return参数以适合您的需求。

Here is an example on JSFiddle . 这是有关JSFiddle 的示例

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM