【问题标题】:Reset jquery strengthify when generating a password生成密码时重置jquery加强
【发布时间】:2020-12-12 22:46:42
【问题描述】:

我已经实现了 jquerystrengthify 库 (https://github.com/MorrisJobke/strengthify) 来验证密码强度以及随机密码生成器。我遇到的问题是,当用户输入弱密码然后决定生成一个时,强度检查器不会重新评估输入并保留旧的验证失败。

在生成密码时,我需要帮助重置验证失败。

代码见下文

...
<div class="password-group">
    <label for="UserPasswordInput">Password</label>
    <a href="#" id="generatePassword">Generate</a>
    <input name="user_password" type="text" class="password-field" id="UserPasswordInput">
</div>
...
<script>
$(document).ready(function() {
    $('#generatePassword').click(function (e) {
        password = $.password(10);
        $('.password-field').val(password);
        e.preventDefault();
    });
    $('.password-field').strengthify({
        zxcvbn: 'https://cdn.rawgit.com/dropbox/zxcvbn/master/dist/zxcvbn.js',
        drawTitles: true,
        drawMessage: true
    });
});
</script>

https://jsfiddle.net/wo4tzLn1/1/

【问题讨论】:

    标签: javascript jquery passwords


    【解决方案1】:

    我会尝试触发change

    $('#generatePassword').click(function (e) {
        password = $.password(10);
    
        $('.password-field').val(password);
        
        // CHANGE HERE
        $('.password-field').trigger("change");
    
        e.preventDefault();
    });
    

    详情 - val() doesn't trigger change() in jQuery

    演示 - https://jsfiddle.net/vyspiansky/7p3ace1d/

    【讨论】:

    • 完美!谢谢Ihor
    猜你喜欢
    • 2011-04-03
    • 2019-09-19
    • 2010-12-31
    • 1970-01-01
    • 2011-01-17
    • 2012-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多