0

我有一个密码强度验证要求列表,以帮助用户设置密码,它被分成几部分,这样一旦用户在密码输入框中输入了有效值,我就可以将每个要求标记为“有效”。(因此,如果他们输入的密码长度超过 7 个字符,密码长度要求通知会变为绿色等)。这很好用。

现在,我想说,如果所有的“if”语句都有效,则允许提交表单,否则,不要提交。阅读后,我通过设置变量 retVal = true 做了一些尝试来实现这一点,但我不太确定如何使用它,所以到目前为止我的尝试都失败了。我还考虑过做类似的事情,如果所有要求的类都有效,那么允许表单提交,但这似乎不是正确的方法?

$('#form-password-change #input-password').keyup(function() {

    // set password variable

    var pwd = $(this).val();

    // validate the length

    if (pwd.length > 7) {
        $('#length').removeClass('invalid').addClass('valid');
    } else {
        $('#length').removeClass('valid').addClass('invalid');
    }

    // RegExp
    // validate letter

    if ( /([^a-z]*[a-z]){3,}/i.test(pwd) ) {
        $('#letter').removeClass('invalid').addClass('valid');
    } else {
        $('#letter').removeClass('valid').addClass('invalid');
    }
});
4

2 回答 2

2

尝试这个:-

$('#form-password-change #input-password').keyup(function() {

var IsTrue=true;

// set password variable

var pwd = $(this).val();

// validate the length

if (pwd.length > 7) {
    $('#length').removeClass('invalid').addClass('valid');
} else {
    $('#length').removeClass('valid').addClass('invalid');
   IsTrue=false;
}

// RegExp
// validate letter

if ( /([^a-z]*[a-z]){3,}/i.test(pwd) ) {
    $('#letter').removeClass('invalid').addClass('valid');
} else {
    $('#letter').removeClass('valid').addClass('invalid');
   IsTrue=false
}
return IsTrue;
});
于 2013-05-17T06:08:51.947 回答
2

尝试这个:

$('#form-password-change #input-password').keyup(function() {

    // set password variable

    var pwd = $(this).val();

    var truetest = 1;
    // validate the length

    if (pwd.length > 7) {
        $('#length').removeClass('invalid').addClass('valid');    
    } else {
       $('#length').removeClass('valid').addClass('invalid');
        truetest = 0;
    }

    // RegExp
    // validate letter

    if ( /([^a-z]*[a-z]){3,}/i.test(pwd) ) {
         $('#letter').removeClass('invalid').addClass('valid');
    } else {
        $('#letter').removeClass('valid').addClass('invalid');
        truetest = 0;
    }

    if(truetest)
    {
        //Do your stuff here
    }
});
于 2013-05-17T06:08:52.600 回答