JS手机号码验证(包括13、15、18号段)

表单验证很常用,今儿分享一个验证手机号码JS正则表达式,当然是包括了13、15、18号段!

无图,直接上代码,可整合到JQuery中!

<script type="text/javascript">
function checkphone(obj){

    //正则:验证电话号码手机号码,包含至今所有号段
    //var reg = /^[1][358]\d{9}$/;                        //正则1
    //var ab=/^(13[0-9]|15[0|3|6|7|8|9]|18[8|9])\d{8}$/;//正则2
    var reg = /^(1[3|5|8])[\d]{9}$/;                    //正则3

    var phone=document.getElementById('telephone').value;
    if(!reg.test(phone)){
        alert("电话号码格式错误!");
        obj.value="";
        obj.focus();
        return false;
    }else{
        alert("您的电话号码:"+phone);
        return true;
    }
}
</script>

还是弄个演示吧,有兴趣的可以试试:演示Demo

Html表单:

<form name="submit">
    输入手机号码:<input type="text" id="telephone" onChange="checkphone(this)">
</form>

这里使用了 onchange 而非 onblur,主要还是考虑到一些浏览器的兼容及用户体验,前者是数据有改变且失去焦点的时候会验证,后者当失去焦点的时候直接验证!