在php jquery中将手机号码验证为10位数字

时间:2017-06-08 06:25:29

标签: php jquery

我正在尝试在按下字母表时验证电话号码jquery以显示错误消息。下面的代码输入数字但不验证10位数。如何验证10位数字。

<script type="text/javascript" >
 $(function() {
   $("#phno").bind("keypress", function (event) {
                if (event.charCode != 0) {
                       var regex = new RegExp("^[0-9]{10}$");
                    var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
                    if (!regex.test(key)) {
                      alert("Please enter valid Student Phone No");
                        event.preventDefault();
                        return false;
                    }
                }
            });
 });

5 个答案:

答案 0 :(得分:0)

你可以试试这个

var regex = new RegExp("/^[0-9]{1,10}$/");

或试试这个

var str='0123456789';
console.log(str.match(/^\d{10}$/)); // retunr null if don't match

答案 1 :(得分:0)

这是一个适合您的工作代码,它可以检查10个数字,只接受数字而不是其他内容:

$(function() {
  $("#phno").bind("keydown", function(event) {
    var a = $(this).val();
    if (a.match(/^\d{9}$/)) {
      console.log("Perfect!");
    } else {
      console.log("Invalid. Ensure, there are 10 digits.");
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type='text' id='phno' />

答案 2 :(得分:0)

你可以用这个

$(function() {
   $("#phno").bind("keydown", function (e) {
        if ((e.keyCode >= 48 && e.keyCode <= 57) || (e.keyCode >= 96 && e.keyCode <= 105)) {
             // 0-9
            var val = $(this).val();
            if (!val.match(/^\d{9}$/))
            {
               console.log("it is a number but nut match 10 digit")
            }
            else
            {
               console.log("success");
               return false; // to restrict user to not enter more than 10 digit
            }
        }
        else
        {
           if(e.keyCode == 8)
              return true; // backspace
           alert("Please enter valid Student Phone No");
                event.preventDefault();
                return false;
        }
   });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type='text' id='phno' />

答案 3 :(得分:0)

只需使用此jquery函数,并将html代码中的十位数限制为

<input type="text" name="phone" maxlength="10" id="phone"/>

并使用以下jquery函数

$("#phone").bind("keypress", function (event) {  
    var phoneno = /^\d{10}$/;  
    var phone_val=$('#phone').val();
    if((phoneno.test(phone_val)))
    {
     return true;  
    }  
    else  
    {    
     return false;  
    }  
});

答案 4 :(得分:0)

只需使用此...

var num = '1234567890';
if(!isNaN(num) && num.length ==10){ alert('Validated');  }
else { alert('Not a 10 digit number'); }