2010-06-07 42 views
1

我正在使用jQuery插件來評估密碼強度。它爲用戶提供了一個圖形表示,以查看密碼的安全性。我想用它來驗證該領域。jQuery密碼強度插件回調驗證方法

該插件的工作原理是評估密碼並給出分數。我希望能夠驗證用戶是否輸入了至少一定分數的密碼。代碼託管在jQuery的網站上:http://plugins.jquery.com/project/pstrength

該文檔指出有一種方法可以添加規則並執行自定義驗證。我不知道從哪裏開始。內聯文檔指出:

* === Changelog === 
* Version 2.1 (18/05/2008) 
* Added a jQuery method to add a new rule: jQuery('input[@type=password]').pstrength.addRule(name, method, score, active) 

而在後面的代碼有以下方法:

jQuery.extend(jQuery.fn.pstrength, { 
    'addRule': function (name, method, score, active) { 
     digitalspaghetti.password.addRule(name, method, score, active); 
     return true; 
    }, 
    'changeScore': function (rule, score) { 
     digitalspaghetti.password.ruleScores[rule] = score; 
     return true; 
    }, 
    'ruleActive': function (rule, active) { 
     digitalspaghetti.password.rules[rule] = active; 
     return true; 
    } 
}); 

如果有人已經看到了如何做到這一點,我會很感激在正確的方向指針的例子。謝謝!

回答

1

你可以這個代碼。

 

if (digitalspaghetti.password.totalscore >= 43) { 
    console.log("it's ok"); 
} 

其中:

  • < = 20 ==周
  • < = 30 ==正常
  • < = 43 ==介質
  • < = 50 ==強
  • 50 ==非常強

即時驗證

 

$("#password").keypress(function() { 
    if (digitalspaghetti.password.totalscore >= 43) { 
    console.log("it's ok"); 
    } 
}); 
 

形式提交之前;

 

$("#password").parents("form").submit(function() { 
    if (digitalspaghetti.password.totalscore >= 43) { 
    console.log("it's ok"); 
    } else { 
    return false; 
    } 
}); 
 
+0

sbmaxx,謝謝你的幫助。這是我需要的。我微調了一下,讓選擇器正確,並適合我的應用程序,它運作良好。謝謝您的幫助。 – jmorhardt 2010-06-09 14:29:06