2010-06-22 3 views
1

J'ai essayé de poster cela avant mais il n'est pas passé (je crois), donc s'il s'agit d'un repos, veuillez ne pas tenir compte. Cependant, j'ai posé une question hier et l'ai compris avec l'aide merveilleuse d'ici. J'ai une page de compte d'utilisateur où un utilisateur peut éditer leurs informations de compte. Maintenant, ils ne changent pas toujours leur mot de passe. Donc, j'ai fait la case Mot de passe actuel requise uniquement lorsque la nouvelle boîte de mot de passe avait une entrée. J'ai également appliqué equalTo: afin que je puisse vérifier la boîte de mot de passe de confirmation avec la nouvelle boîte de mot de passe. Tout cela fonctionne. Cependant, maintenant je veux appliquer quelques règles à la nouvelle boîte de mot de passe. Comme le mot de passe doit comporter au moins 6 caractères, contenir une lettre et un chiffre, et ne pas contenir d'autres caractères. Quelqu'un peut-il me diriger dans la bonne direction?règles de mot de passe jquery

ici est une partie du code que j'ai pour la longueur min:

$(<%= NewPass1.GetName() %>").rules("add", { 
    minlength: 6, 
SOME REGEX HERE? 
+0

verry important à considérer: mieux valider côté serveur :-) sinon je serai en mesure de vous envoyer des données non validées (si je désactive JS par exemple) – helle

+0

@helle a raison, même si ça ne fait pas de mal de valider deux fois . Il est bon de le faire une fois sur le côté client pour donner une rétroaction immédiate à l'utilisateur, plutôt que d'attendre quelques secondes le message d'échec. Surtout s'ils ont une connexion lente. –

+0

J'ai une validation côté serveur. C'est juste un truc d'interfaçage avec l'utilisateur. – Tom

Répondre

3

Essayez cette fonction. Il vérifie que le mot de passe est alphanumérique et comporte au moins 6 caractères. Il vérifie également qu'il contient au moins un chiffre et une lettre.

function isValid(input) 
{ 
    var reg = /^[^%\s]{6,}$/; 
    var reg2 = /[a-zA-Z]/; 
    var reg3 = /[0-9]/; 
    return reg.test(input) && reg2.test(input) && reg3.test(input); 
} 

Je suppose que vous utilisez le plugin Validation. Pour utiliser une méthode personnalisée avec le plug-in, essayez cette fonction: http://docs.jquery.com/Plugins/Validation/Validator/addMethod#namemethodmessage

EDIT:

Edité pour permettre à tous les caractères sauf espaces et « % ».

+0

si je veux inclure des symboles .... tout est légal outre les espaces et le symbole% – Tom

+0

Essayez mon nouvel edit –

+0

sonne bien maintenant je cherche juste sur la façon d'utiliser cette fonction avec le addmethod. C'est mon premier tour avec javascript et jquery – Tom