[javascript] javascript cell number validation

I want to validate cell number using JavaScript.

Here is my code.

if(number.value == "") {
    window.alert("Error: Cell number must not be null.");
    number.focus();
    return false;
}

if(number.length != 10) {
    window.alert("Phone number must be 10 digits.");
    number.focus();
    return false;
}

Here is the issue, when I submit the form with out entering the phone number, it is showing the error cell number must not be null. it works fine.

When I submit the form with cell number less than 10 digits, it is showing phone number must be 10 digits. It is also fine.

The problem is when I submit the form with 10 digits, then also it is showing the error phone number must be 10 digits.

Please help me. Thank You.

And also need the validation code for only digits for cell number.

This question is related to javascript

The answer is


If number is your form element, then its length will be undefined since elements don't have length. You want

if (number.value.length != 10) { ... }

An easier way to do all the validation at once, though, would be with a regex:

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

\d means "digit," and {10} means "ten times." The ^ and $ anchor it to the start and end, so something like asdf1234567890asdf does not match.


Verify this code : It works on change of phone number field in ms crm 2016 form .

function validatePhoneNumber() {

    var mob = Xrm.Page.getAttribute("gen_phone").getValue();
    var length = mob.length;
    if (length < 10 || length > 10) {
        alert("Please Enter 10 Digit Number:");
        Xrm.Page.getAttribute("gen_phone").setValue(null);
        return true;
    }
    if (mob > 31 && (mob < 48 || mob > 57)) {} else {
        alert("Please Enter 10 Digit Number:");
        Xrm.Page.getAttribute("gen_phone").setValue(null);
        return true;
    }
}

<script>
    function validate() {
        var phone=document.getElementById("phone").value;
        if(isNaN(phone))
        {
            alert("please enter digits only");
        }

        else if(phone.length!=10)
        {
            alert("invalid mobile number");
        }
        else
        {
            confirm("hello your mobile number is" +" "+phone);
        }
</script>

This function check the special chars on key press and eliminates the value if it is not a number

function mobilevalid(id) {

    var feild = document.getElementById(id);

    if (isNaN(feild.value) == false) {
        if (feild.value.length == 1) {
            if (feild.value < 7) {
                feild.value = "";
            }
        } else if (feild.value.length > 10) {
            feild.value = feild.value.substr(0, feild.value.length - 1);
        }
        if (feild.value.charAt(0) < 7) {
            feild.value = "";
        }
    } else {
        feild.value = "";
    }

}

If you type:

if { number.value.length!= 10}...     

It will sure work because the value is the quantity which will be driven from the object.


Mobile number Validation using Java Script, This link will provide demo and more information.

_x000D_
_x000D_
function isNumber(evt) {_x000D_
  evt = (evt) ? evt : window.event;_x000D_
  var charCode = (evt.which) ? evt.which : evt.keyCode;_x000D_
  if (charCode > 31 && (charCode < 48 || charCode > 57)) {_x000D_
    alert("Please enter only Numbers.");_x000D_
    return false;_x000D_
  }_x000D_
_x000D_
  return true;_x000D_
}_x000D_
_x000D_
function ValidateNo() {_x000D_
  var phoneNo = document.getElementById('txtPhoneNo');_x000D_
_x000D_
  if (phoneNo.value == "" || phoneNo.value == null) {_x000D_
    alert("Please enter your Mobile No.");_x000D_
    return false;_x000D_
  }_x000D_
  if (phoneNo.value.length < 10 || phoneNo.value.length > 10) {_x000D_
    alert("Mobile No. is not valid, Please Enter 10 Digit Mobile No.");_x000D_
    return false;_x000D_
  }_x000D_
_x000D_
  alert("Success ");_x000D_
  return true;_x000D_
}
_x000D_
<input id="txtPhoneNo" type="text" onkeypress="return isNumber(event)" />_x000D_
<input type="button" value="Submit" onclick="ValidateNo();">
_x000D_
_x000D_
_x000D_


function IsMobileNumber(txtMobId) {
    var mob = /^[1-9]{1}[0-9]{9}$/;
    var txtMobile = document.getElementById(txtMobId);
    if (mob.test(txtMobile.value) == false) {
        alert("Please enter valid mobile number.");
        txtMobile.focus();
        return false;
    }
    return true;
}

Calling Validation Mobile Number Function HTML Code -


I used the follow code.

var mobileNumber=parseInt(no)
  if(!mobileNumber || mobileNumber.toString().length!=10){
  Alert("Please provide 10 Digit numeric value")
}

If the mobile number is not a number, it will give NaN value.


<script type="text/javascript">
    function MobileNoValidation()
    {
       var phno=/^\d{10}$/
       if(textMobileNo.value=="")
       {
        alert("Mobile No Should Not Be Empty");
       }
       else if(!textMobileNo.value.match(phno))
       {
        alert("Mobile no must be ten digit");
       }
       else
       {
        alert("valid Mobile No");
       }
    }
</script>