美文网首页
表单验证

表单验证

作者: 海藻web开发 | 来源:发表于2018-09-22 18:18 被阅读0次

基于jquery

html部分

<span class="dz-intro"><sup>*</sup>QQ:</span>
<input type="number" name="qq" data-minlength="5" data-maxlength="11" data-error="qq格式不正确">
<span class="dz-title"></span>

js部分

$(function () {
                        $("input").blur(function () {
                            var minlength=$(this).attr('data-minlength')
                            var maxlength=$(this).attr('data-maxlength')
                            var error=$(this).attr('data-error')
                            check($(this),minlength,maxlength,error)

                        })
                        //密码 验证安全等级 一个任意字符 pw-weak  数字+字母+6个 pw-medium  数字+字母+特殊符号+大写+8位 pw-strong
                        $("input[name='password']").on('input',function () {
                            var type=0;
                            var password=$(this).val()
                            var hasxiaoxie= /[a-z]+/; //小写字母
                            var hasdaxie= /[A-Z]+/; //大写字母
                            var hasnumber= /[0-9]*/; //数字
                            var regEn = /[`~!@#$%^&*()_+<>?:"{},.\/;'[\]]/im,
                                regCn = /[·!#¥(——):;“”‘、,|《。》?、【】[\]]/im;
                            if (hasxiaoxie.test(password)){
                                type++
                            }
                            if (hasdaxie.test(password)){
                                type++
                            }
                            if (hasnumber.test(password)){
                                type++
                            }
                            if (regEn.test(password)||regCn.test(password)){
                                type++
                            }
                            if(type==0){$('.pw-strength').attr('class','pw-strength');return}
                            if(type==1){$('.pw-strength').attr('class','pw-strength pw-weak');return}
                            if(type==2||type==3){
                                if(password.length>=6){
                                    $('.pw-strength').attr('class','pw-strength pw-medium');return
                                }else{
                                    $('.pw-strength').attr('class','pw-strength  pw-weak');return
                                }
                            }
                            if(type==4){
                                if(password.length>=8){
                                    $('.pw-strength').attr('class','pw-strength pw-strong');return
                                }else{
                                    $('.pw-strength').attr('class','pw-strength  pw-medium');return
                                }
                            }

                        })
                        $('input').focus(function (e) {
                            $(this).removeClass('error')
                            $(this).next().removeClass('error')
                            var error=$(this).attr('data-error')
                            if(error){$(this).next().html('')}
                        })
                    })
                    //input对象  最小长度 最大长度  错误提示
                    function check(obj,minlength,maxlength,error) {
                        var value=obj.val()
                        if(value.length<minlength||value.length>maxlength){
                            obj.addClass('error')
                            obj.next().addClass('error')
                            if(error){obj.next().html(error)}
                        }
                    }

相关文章

网友评论

      本文标题:表单验证

      本文链接:https://www.haomeiwen.com/subject/viexoftx.html