J'ai essayé de valider mon code JQuery à partir de JSLint et j'ai eu beaucoup d'erreurs. S'il vous plaît laissez-moi savoir comment réparer.JSLint Affiche autant d'erreurs mais mon programme fonctionne correctement
Ceci est un passe Mot de passe Force code compteur
$.fn.passwordstrength = function(options){
return this.each(function(){
var that = this;that.opts = {};
that.opts = $.extend({}, $.fn.passwordstrength.defaults, options);
that.div = $(that.opts.targetDiv);
that.defaultClass = that.div.attr('class');
that.percents = (that.opts.classes.length) ? 100/that.opts.classes.length : 100;
v = $(this)
.keyup(function(){
if(typeof el == "undefined")
this.el = $(this);
var s = getPasswordStrength(this.value);
var p = this.percents;
var t = Math.floor(s/p);
if(100 <= s)
t = this.opts.classes.length - 1;
this.div
.removeAttr('class')
.addClass(this.defaultClass)
.addClass(this.opts.classes[ t ]);
})
});
function getPasswordStrength(H){
var D=(H.length);
if (D<4){
D=0;
}
if(D>5){
D=5;
}
// This is patern for non-numeric characters
var F=H.replace(/[0-9]/g,"");
var G=(H.length-F.length);
if(G>3){
G=3;
}
// This is patern for uppercase and lowercase evaluation
var A=H.replace(/\W/g,"");
var C=(H.length-A.length);
if(C>3){
C=3;
}
var B=H.replace(/[A-Z]/g,"");
var I=(H.length-B.length);
if(I>3){
I=3;
}
// This is patern for Special Characters
var P=H.replace(/^[@#$^&]*$/,"");
var Q=(H.length-P.length);
if(Q>3){
Q=3;
}
var E=((D*10)-20)+(G*10)+(C*15)+(I*10)+(Q*10);
if(E<0){
E=0;
}
if(E>100){
E=100;
}
return E;
}
function randomPassword() {
var chars = "[email protected]#$_+";
var size = 10;
var i = 1;
var ret = "";
while (i <= size) {
$max = chars.length-1;
$num = Math.floor(Math.random()*$max);
$temp = chars.substr($num, 1);
ret += $temp;
i++;
}
return ret;
}
};
$(document)
.ready(function(){
$('input[name="password"]').passwordstrength({targetDiv: '#pwd_strength',classes : Array('weak','medium','strong','complex')});
});
Salut Oleg, J'ai besoin d'éditer mon Regx et de coder pour l'extension de mot de passe avec les critères ci-dessous. 1. Le mot de passe a un mélange de lettres et de chiffres 2. Le mot de passe mélange également les minuscules et les majuscules 3. Le mot de passe a également au moins 8 caractères ou plus 4. Le mot de passe a aussi des caractères spéciaux comme?, *, \, "" ou + 5. Le mot de passe a aussi au moins 10 caractères – SASHI
@SASHI: Désolé Sashi, mais comment 'RegEx' est-il connecté aux erreurs JSLint de votre question principale? Le seul avertissement JSLint est la recommandation de remplacer '/^[@ # $^&] * $ /' par// [@ # $ \^&] * $/'. – Oleg