JQuery Simple Validateur addMethod ne fonctionne pas

Mise à jour de question sur le fond

Je suis en train de valider un super forme simple. Finalement, le nom d'utilisateur sera par rapport à une RegExp instruction et la même volonté d'aller pour le mot de passe. Cependant, maintenant, je suis juste essayer d'apprendre le Validateur addMethod format.

J'ai actuellement ce script:

JQuery.validator.addMethod(
    "legalName",
    function(value, element) {
        if (element.value == "bob")
        {
            return false;
        }
        else return true;
    },
    "Use a valid username."
);

$(document).ready(function() {
    $("#form1").validate({
        rules: {
            username: {
                legalName: true
            }
        },
    });
});

Qui, si je ne me trompe pas doit retourner false et de répondre avec "Utiliser un nom d'utilisateur valide." si je devais mettre "bob" dans le formulaire.

Cependant, il est tout simplement l'envoyer.

Je suis un lien vers JQuery AVANT Validateur dans l'en-tête comme indiqué.

Mon uber simple formulaire ressemble à ceci:

<form id="form1" method="post" action="">
  <div class="form-row"><span class="label">Username *</span><input type="text" name="username" /></div>
  <div class="form-row"><input class="submit" type="submit" value="Submit"></div>
</form>

Enfin, comment aurais-je aller sur la restructuration par la addMethod fonction retourne true if et false à la else scène tout en conservant le message d'alerte pour un false retour?
(ignorer cette dernière partie si vous ne comprenez pas ce que j'essayais de dire 🙂 )

Merci d'avance.


Merci à tous ceux qui ont relevé mon JQuery -> jQuery faute de frappe.

Nouveau -> RegEx en jQuery Validateur addMethod

Idéalement, je suis en train de transformer cela en un simple formulaire de connexion (nom d'utilisateur/mot de passe). C'est à des fins de démonstration seulement alors il l'habitude ont une base de données attachée ou quoi que ce soit, juste une simple js validations. Je suis à la recherche de faire le nom d'utilisateur pour valider <48 caractères, en anglais seulement des lettres et des chiffres, pas de caractères spéciaux. J'ai pensé à une liste blanche serait plus facile si j'avais quelque chose comme ceci: ^[a-zA-Z0-9]*${1,48} mais je ne suis pas sûr si c'est la bonne JS RegExp (elle varie de Ruby RegExp si je ne me trompe pas?...Habituellement j'utilise rubular.com). Mot de passe sera similaire, mais nécessitent quelques majuscules/minuscules et des chiffres.

Je crois que j'ai besoin de faire un autre $.validator.addMethod pour legalPassword qui seront très semblables.

Modifier

changé la regexp pour ^[a-zA-Z0-9]+$ et a ajouté maxlength: 48 à mes valider la fonction. Toutefois, la regexp ne fonctionne toujours pas, et aussi loin que je peux dire c'est correct.

utilisation jQuery( petites j ) pas JQuery (capital)
Merci à tous ceux qui ont mentionné le cas sensibles à la faute de frappe! Je vais essayer d'expliquer la seconde partie un peu mieux maintenant.

OriginalL'auteur tehaaron | 2011-03-08