javascript 验证密码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 验证密码相关的知识,希望对你有一定的参考价值。


function setupPassword(pswdField, isBlur)
{
    // set password variable
    var pswd = jQuery(pswdField).val();

    var validCount = 0;

    //validate the length
    if ( pswd.length < 8 ) {
        jQuery('#length').removeClass('valid').addClass('invalid');
    } else {
        jQuery('#length').removeClass('invalid').addClass('valid');
        validCount++;
    }

    //validate letter
    if ( pswd.match(/[a-z]/) ) {
        jQuery('#letter').removeClass('invalid').addClass('valid');
        validCount++;
    } else {
        jQuery('#letter').removeClass('valid').addClass('invalid');
    }

    //validate uppercase letter
    if ( pswd.match(/[A-Z]/) ) {
        jQuery('#capital').removeClass('invalid').addClass('valid');
        validCount++;
    } else {
        jQuery('#capital').removeClass('valid').addClass('invalid');
    }

    //validate number
    if ( pswd.match(/\d/) ) {
        jQuery('#number').removeClass('invalid').addClass('valid');
        validCount++;
    } else {
        jQuery('#number').removeClass('valid').addClass('invalid');
    }

    //validate symbol
    if ( pswd.match(/[^a-zA-Z0-9\s]/) ) {
        jQuery('#symbol').removeClass('invalid').addClass('valid');
        validCount++;
    } else {
        jQuery('#symbol').removeClass('valid').addClass('invalid');
    }

    if(validCount < 5) {
        jQuery('#password_requirements').show();
        jQuery('#secure_password').hide();
        if(isBlur) {
            jQuery(pswdField).css('border','1px solid #A10E1E');
            jQuery('#password_status').removeClass('error').removeClass('lock_secure').removeClass('lock').addClass('lock_fail');
        }
        else {
            jQuery(pswdField).css('border','');
            jQuery('#password_status').removeClass('error').removeClass('lock_secure').removeClass('lock_fail').addClass('lock');
        }
    }
    else {
        jQuery('#password_requirements').hide();
        jQuery('#secure_password').show();
        jQuery('#password_status').removeClass('error').removeClass('lock').removeClass('lock_fail').addClass('lock_secure');
    }
}

jQuery(document).ready(function() {
    setupPassword(jQuery('input[id=p_word]'), false);
});

jQuery(document).ready(function() {

    //you have to use keyup, because keydown will not catch the currently entered value
    jQuery('input[id=p_word]').keyup(function() {
        setupPassword(this, false);
    }).focus(function() {
            /*// .position() uses position relative to the offset parent,
            var pos = jQuery('input[id=p_word]').position();

            // .outerWidth() takes into account border and padding.
            var width = jQuery('input[id=p_word]').outerWidth();
            //show the menu directly over the placeholder
            jQuery("#pswd_info").css({
                position: "absolute",
                top: pos.top + 35 + "px",
                left: (pos.left) + "px"
            }).show();*/

            jQuery('#pswd_info').slideDown();
        }).blur(function() {
            setupPassword(this, true);
            //jQuery('#pswd_info').hide();
        });
});

以上是关于javascript 验证密码的主要内容,如果未能解决你的问题,请参考以下文章

使用 JavaScript 验证密码和名字

具有特殊字符的Javascript正则表达式密码验证

JavaScript 正则表单验证(用户名密码确认密码手机号座机号身份证号)

带有密码确认的 Javascript 表单验证

没有 JQuery 的 Javascript 特殊字符密码验证

javascript 验证密码