Besoin d’append une vérification de regex à mon script jquery.validate.
J’ai ceci:
$().ready(function() { $("#myBlahForm").validate({ rules: { someName: { required: true, minlength: 5, maxlength: 8, }, somePassword: { required: true, minlength: 5, maxlength: 8, }, someConfirmPassword: { required: true, equalTo: "#somePassword" }, }, messages: { someName: { required: "Please create your username", }, somePassword: { required: "Please create a password", }, someConfirmPassword: { required: "Please re-enter your password", equalTo: "Passwords must match" }, } });
});
Et j’aimerais vérifier si des caractères spécifiques sont autorisés dans la firebase database pour les mots de passe lorsque l’utilisateur entre leurs données ici:
Quel est le meilleur moyen d’append une vérification regex à un champ obligatoire tel qu’un mot de passe ou un nom d’utilisateur à l’aide du plug-in jquery.validate de bassisstance: http://docs.jquery.com/Plugins/Validation
En gros, je dois m’assurer que le mot de passe et les noms d’utilisateur créés ne contiennent que 0 à 9, des lettres et quelques caractères spéciaux.
addMethod
bien, vous pouvez append votre méthode de validation personnalisée en utilisant addMethod
, comme
$.validator.addMethod("regx", function(value, element, regexpr) { return regexpr.test(value); }, "Please enter a valid pasword.");
Et ,
... $("#myBlahForm").validate({ rules: { somePassword: { required: true , //change regexp to suit your needs regx: /^(?=.*\d)(?=.*[az])(?=.*[AZ])\w{6,}$/, minlength: 5, maxlength: 8 } }
required: function(element){ return /[a-zA-Z0-9]/.test($('#someConfirmPassword').val()); }
L’expression ci-dessus retournera true si regexp passe, false si ce n’est pas le cas. Changez-le pour répondre à vos besoins.