繁体   English   中英

使用Ajax提交表单后无法重置进度栏

[英]Progress bar cant reset after submitting form using ajax

嗨,下午好,请帮我,我的进度栏中有问题。 提交表单后,进度条不会重置,我使用ajax插入数据,我想在触发提交按钮后重置进度条。 我使用进度条输入密码。这是进度条中的代码:我的提交按钮名称:“插入数据”

<script>
    $(function() {
    $.fn.bootstrapPasswordMeter = function(options) {
        var settings = $.extend({
            minPasswordLength: 1,
            level0ClassName: 'progress-bar-danger',
            level0Description: 'Weak',
            level1ClassName: 'progress-bar-warning',
            level1Description: 'Poor',
            level2ClassName: 'progress-bar-info',
            level2Description: 'Good',
            level3ClassName: 'progress-bar-Primary',
            level3Description: 'Strong',
            level4ClassName: 'progress-bar-success',
            level4Description: 'Very strong',
            parentContainerClass: '.form-group'
        }, options || {});

        $(this).on("keyup", function() {
            var progressBar = $(this).closest(settings.parentContainerClass).find('.progress-bar');
            var progressBarWidth = 0;
            var progressBarDescription = '';
            if ($(this).val().length >= settings.minPasswordLength) {
                var zxcvbnObj = zxcvbn($(this).val());
                progressBar.removeClass(settings.level0ClassName)
                    .removeClass(settings.level1ClassName)
                    .removeClass(settings.level2ClassName)
                    .removeClass(settings.level3ClassName)
                    .removeClass(settings.level4ClassName)
                switch (zxcvbnObj.score) {
                    case 0:
                        progressBarWidth = 0;
                        progressBar.addClass(settings.level0ClassName);
                        progressBarDescription = settings.level0Description;
                        break;
                    case 1:
                        progressBarWidth = 25;
                        progressBar.addClass(settings.level1ClassName);
                        progressBarDescription = settings.level1Description;
                        break;
                    case 2:
                        progressBarWidth = 50;
                        progressBar.addClass(settings.level2ClassName);
                        progressBarDescription = settings.level2Description;
                        break;
                    case 3:
                        progressBarWidth = 75;
                        progressBar.addClass(settings.level3ClassName);
                        progressBarDescription = settings.level3Description;
                        break;
                    case 4:
                        progressBarWidth = 100;
                        progressBar.addClass(settings.level4ClassName);
                        progressBarDescription = settings.level4Description;
                        break;
                }
            } else {
                progressBarWidth = 0;
                progressBarDescription = '';
            }
            progressBar.css('width', progressBarWidth + '%');
            progressBar.text(progressBarDescription);
        });
    };
    $('#Password').bootstrapPasswordMeter({
        minPasswordLength: 3
    });
    });
    });
</script>

在这种情况下会发生错误:

$(this).val().length >= settings.minPasswordLength

但是,如果没有有效的摘录,很难说是左侧还是右侧失败了。 当您需要在某些时候将其设置为FALSE时,它似乎总是TRUE。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM