js正则表达式验证手机,邮箱,身份证

一. 简述

判断输入手机号,邮箱,身份证是否合法。

二. 方法

<input id="id" type="text" placeholder="请输入投保人证件号码" class="section-input" size="18" 
                   onchange="isIdAvailable(this.value)"/>
<input id="phone"  type="number" placeholder="请输入投保人手机号" class="section-input"
                   oninput="if(value.length>11)value=value.slice(0,11)" pattern="[0-9]*"
                   onchange="isPoneAvailable(this.value)"/>
<input id="email"  type="email" placeholder="请输入投保人邮箱以便获取电子保单" class="section-input"
                   onchange="isEmailAvailable(this.value)"/>

<script>
    var myreg = /^[1][3,4,5,7,8][0-9]{9}$/;
    var myid = /^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$/;
    var myemail = /[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/;
    /**
     * onchange:input框失去焦点的时候触发该事件
     * @param str
     * @returns {boolean}
     */
    function isPoneAvailable(str) {
        if (!myreg.test(str)) {
            layer.msg('手机号不合法');
            return false;
        } else {
            return true;
        }
    }
    /**
     * 验证身份证
     * @param str
     */
    function isIdAvailable(str) {
        if (!myid.test(str)) {
            layer.msg('身份证不合法');
            return false;
        } else {
            return true;
        }
    }
    /**
     * 验证邮箱
     * @param str
     */
    function isEmailAvailable(str) {
        if (!myemail.test(str)) {
            layer.msg('邮箱不合法');
            return false;
        } else {
            return true;
        }
    }
</script>
onchang:监听输入值的改变,不是实时监听变化的,而是失去焦点的时候,执行这个方法。

猜你喜欢

转载自blog.csdn.net/qq_35321405/article/details/80458461