如何验证10位数的电话号码?

时间:2017-02-01 05:11:56

标签: javascript php jquery ajax

我需要在JS代码中进行10位数字验证。我已经从数据库中提取了“Contact already exists”验证码。但我不认识10位数的验证码。 我的js代码:

function checkcontact() {
    var contact=document.getElementById( "UserContact" ).value;

    if(contact.length==10) {
        $.ajax({
            type: 'post',
            url: 'index.php=checkemail',
            data: {
                u_contact:contact,
            },
            success: function (response) {
                if(response=="not_exist") {
                    return true;    
                } else {
                    $( '#contact_status' ).html(response);
                }
            }
        });
    }
}

my input type from 

<input class="form-control" type="text" maxlength="10"  id="UserContact" onkeyup="checkcontact(); if (/\D/g.test(this.value)) this.value = this.value.replace(/\D/g,'')" placeholder="Contact Number Here" required/>
<span id="contact_status"></span> </div>

如何在js代码中的checkcontact()函数中验证10位数?

5 个答案:

答案 0 :(得分:0)

试试这个,

function checkcontact(){
var contact=document.getElementById( "UserContact" ).value;

var validate = check(contact);
if(validate){
    $.ajax({
        type: 'post',
        url: 'index.php=checkemail',
        data: {
        u_contact:contact,
        },
        success: function (response) {
            if(response=="not_exist"){
                return true;    
            }
            else{
                $( '#contact_status' ).html(response);
            }
        }
    });
}
}

function check(var number){
 var reg = /^[0-9]{1,10}$/;
 var checking = reg.test(number); 

  if(checking){
    return true;
  }else{
    return false;
  }
}

答案 1 :(得分:0)

试试这个..

var val = contact
  if (/^\d{10}$/.test(val)) {
  // value is ok, use it
  } else {
  alert("Invalid number; must be ten digits")
  return false
}

Reference

答案 2 :(得分:0)

只需使用它来验证字符串是否只是数字

&#13;
&#13;
var yourValue = '123456789';
var isNumber = /^\d+$/.test(yourValue);
alert(isNumber);
&#13;
&#13;
&#13;

答案 3 :(得分:0)

检查此代码

$(function() {
  
$('#UserContact').blur(function() {
 
  var contact = $("#UserContact").val();
   
  if(contact.length==10){
    alert(contact)
    //return false;
    $.ajax({
        type: 'post',
        url: 'index.php=checkemail',
        data: {u_contact:contact},
        success: function (response) {
            if(response=="not_exist"){
                return true;    
            }
            else
            {
             $( '#contact_status').html(response);
            }
        }
    });
}

});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<input class="form-control" type="number" maxlength="10"  id="UserContact"  placeholder="Contact Number Here" required/>
<span id="contact_status"></span> </div>

答案 4 :(得分:0)

您无需验证10位数字,只需将输入类型绑定为数字。 它只允许数字作为输入。 根据你的代码,当它的长度自动为10时,它将调用ajax。

<input class="form-control" type="number" maxlength="10"  id="UserContact" onkeyup="checkcontact(); if (/\D/g.test(this.value)) this.value = this.value.replace(/\D/g,'')" placeholder="Contact Number Here" required/>
      <span id="contact_status"></span>