Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery强密码验证_Javascript_Jquery - Fatal编程技术网

Javascript Jquery强密码验证

Javascript Jquery强密码验证,javascript,jquery,Javascript,Jquery,很抱歉这么问,但我对javascript和Jquery还很陌生! 我一直在努力从一个只接受强密码的插件中生成这段代码 满足最小长度要求,匹配字段并检查字段是否为空;但我不能让它合并A-Z,A-Z,1-0等等…这是我最好的尝试,但它不起作用 任何帮助都将不胜感激 function strongpass_submit(url) { jQuery("#strong-error", jQuery("#action")).hide(); var witherror = false;

很抱歉这么问,但我对javascript和Jquery还很陌生! 我一直在努力从一个只接受强密码的插件中生成这段代码

满足最小长度要求,匹配字段并检查字段是否为空;但我不能让它合并A-Z,A-Z,1-0等等…这是我最好的尝试,但它不起作用

任何帮助都将不胜感激

function strongpass_submit(url) {   

    jQuery("#strong-error", jQuery("#action")).hide();
    var witherror = false;
    var passval = jQuery("#strong-pw", jQuery("#action")).val();
    var okval = jQuery("#strong-pw-confirm", jQuery("#action")).val();
    if (passVal == '') {
            jQuery("#strong-error", jQuery("#action")).html('Please enter a password.').fadeIn();
            return false;

//THIS IS THE PART I'M HAVING TROUBLE WITH
    } else if (okval.search(/^([A-Z0-9.%+-]+@@[A-Z0-9.-]+.[A-Z]{2,6})*([,;][\s]*([A-Z0-9.%+-]+@@[A-Z0-9.-]+.[A-Z]{2,6}))*$/i)) {
        jQuery("#strong-error", jQuery("#action")).html('Password must be strong.').fadeIn();
        return false;
// UNTIL HERE

    } else if (okval.length < 8) {
        jQuery("#strong-error", jQuery("#action")).html('Password must be at least 8 characters.').fadeIn();
        return false;

    } else if (okval == '') {
        jQuery("#strong-error", jQuery("#action")).html('Please re-enter your password.').fadeIn();
        return false;
    } else if (passval != okval ) {
        jQuery("#pass-error", jQuery("#action")).html('Passwords do not match.').fadeIn();
        return false;
    }
    jQuery('#action #maindiv').fadeOut('fast', function(){
        jQuery('#popout').show();
        jQuery.ajax({
            url: url,
            dataType: 'json',
            type: 'post',
            data: jQuery('#action form').serialize(),
            success: function(data){
                if(data.confirm == 'success'){
                    jQuery('#cboxLoadingGraphic').fadeOut('fast', function(){
                        jQuery('#action #second').fadeIn();
                    });
                }
                else {
                    jQuery('#cboxLoadingGraphic').fadeOut('fast', function(){
                        jQuery('#action #openerror').fadeIn();
                    });
                }
            }
        });
    });
};

在这些有问题的行中,您的正则表达式似乎是错误的。 为了验证具有此类要求的输入,您可以使用以下代码和多个正则表达式:

var-okval=Abcd123!; var print=/[A-Z]/.testokval&&/[0-9]/.testokval&&/[^A-Za-z0-9]/.testokval&&okval.length>7;
console.logprint;为什么要使用不区分大小写的标志?看来你的整个正则表达式都搞砸了…你说得对!。。。谢谢你指出这一点非常感谢加拉布拉。。。老实说,我真的不知道自己在做什么。我试过用你的正则表达式,但它还是一无所获。另外,我不知道如何应用你提供的验证码。。。对不起,这是我的水平。你认为搜索方法在正则表达式之前有效吗?。。。我要放弃了,你能具体说明一下什么是有效密码吗?搜索方法有几个问题。。在我理解密码规范的那一刻,我将编辑并更彻底地解释实现!你好,加拉布拉。。。有效密码应至少包含1个大写字母、1个数字、1个符号和8个字符。@Josh045现在检查一下,让我知道它是否适用于youThanks@GalAbra。。。它似乎不起作用。我觉得这很愚蠢,但是你的代码到底应该放在哪里呢?请确保对你的代码提供一些解释。
<style>
   .weak{
   color:red;
   font-size: 17px;
   }
   .good{
   color: #17da17;
   font-size: 17px;
   }
   .strong{
   color: #339333;
   font-size: 17px;
   }
</style>
<form id="password-check">
   <label>Password : </label>
   <input name="pass" id="pass" type="password"/>
   <span id="message"></span>
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
   $(document).ready(function()
   {
   $('#pass').keyup(function()
   {
   $('#message').html(checkStrength($('#pass').val()))
   }) 
   function checkStrength(password)
   {
    var useremail="testing@gmail.com";
    var username="testing";
   
    var strength = 0
    if (password.length < 6) { 
        $('#message').removeClass();
        $('#message').addClass('weak');
        return 'Too short!';
    }
    if ((username.indexOf(password) > -1) || (password.indexOf(username)> -1))
    {
        $('#message').removeClass();
        $('#message').addClass('weak');
        return "Password must be different from user name!"; 
    }
    if ((useremail.indexOf(password) > -1) || (password.indexOf(useremail)> -1))
    {
        $('#message').removeClass();
        $('#message').addClass('weak');
        return "Password must be different from user email!"; 
    }
    if (password.length > 7) strength += 1
    if (password.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/))  strength += 1
    if (password.match(/([a-zA-Z])/) && password.match(/([0-9])/))  strength += 1 
    if (password.match(/([!,%,&,@,#,$,^,*,?,_,~])/))  strength += 1
    if (password.match(/(.*[!,%,&,@,#,$,^,*,?,_,~].*[!,%,&,@,#,$,^,*,?,_,~])/)) strength += 1
    if (strength < 2 )
    {
        $('#message').removeClass();
        $('#message').addClass('weak');
        return 'Weak!';   
    }
    else if (strength == 2 )
    {
        $('#message').removeClass();
        $('#message').addClass('good');
        return 'Good!';  
    }
    else
    {
        $('#message').removeClass();
        $('#message').addClass('strong');
        return 'Strong!';
    }
   }
   });
</script>