密码强度实现 ExtJS

Posted

技术标签:

【中文标题】密码强度实现 ExtJS【英文标题】:Password Strength Implementation ExtJS 【发布时间】:2011-06-27 11:23:28 【问题描述】:

我正在查看 ExtJS 的密码强度实现,并遇到了这个特定的实现,

A password strength meter for passwords for ExtJS4.

这是使用 ExtJS 4 实现的,我希望将它与 ExtJS 3 一起使用。 我尝试了几个选项,但想不通。

如果我需要做一些特定的事情才能让它与 ExtJS 3 一起工作,请告诉我。

如果有帮助的话,这里是这个插件的Github link。

【问题讨论】:

【参考方案1】:

在我的几个项目中,我使用了这个小部件: Ext.ux.PasswordMeter

效果很好,所以我认为您也可以查看它。

【讨论】:

链接已失效,我不得不向创建者发送电子邮件并重新获取链接。现在在我的项目中使用它。感谢您的建议。 为什么死了?刚刚检查,运行良好:alive link. 就像我说的,“我必须给创建者发电子邮件才能让链接再次工作。”。链接失效了。 好的,谢谢。我为未来的读者添加了一条评论,所以他们可以确定它现在可以工作:)【参考方案2】:

看起来很简单。您所要做的就是使用相同的逻辑扩展Ext.form.TextField 类。他们正在使用onFieldChange 事件处理实际的“强度”,从我在文档中看到的内容来看,这在 Ext 3 中不存在,但您可以轻松地使用keyup : ( Ext.form.TextField this, Ext.EventObject e ) 事件来做同样的事情。

查看源代码,发现它们定义了 2 个函数,processValuescorePassword。您可以直接复制这些函数,然后实现 keyup 函数来使用它们。

您将创建类:

    Ext.form.PasswordStrength = Ext.extend(Ext.form.TextField, 


        initComponent: function () 

           // write your code, functions, etc here

            // default values you want for your TextField
            var config = 

            

            Ext.apply(this, config);

            Ext.form.PasswordStrength.superclass.initComponent(this);

        
    );

   // register an xtype
    Ext.reg("passwordstrength", Ext.form.PasswordStrength);

这应该足以让你开始。

【讨论】:

非常感谢。明天我会试一试,让你知道进展如何:)【参考方案3】:

我将 Ext.ux.PasswordMeter 修改为与 Ext JS 4 兼容。这是代码:my blog

请随时给我反馈。

【讨论】:

以上是关于密码强度实现 ExtJS的主要内容,如果未能解决你的问题,请参考以下文章

利用JavaScript来实现用动态检验密码强度

iOS 项目日志 -- 密码强度 实现

注册时的密码强度

AngularJS 实现判断密码

JS 密码强度

JavaScript密码强度验证