J'ai un formulaire qui peut éventuellement être pré-rempli via Facebook Connect. Une fois qu'un utilisateur se connecte, son nom et son adresse e-mail sont automatiquement renseignés. Le problème est que cela ne déclenche pas la validation à distance pour vérifier si l'e-mail existe déjà.
Est-il possible que je puisse appeler la validation sur ce seul champ? Quelque chose comme:
$('#email-field-only').validate()
serait une idée. J'ai cherché dans les documents sans succès.
$('input[name=email-field-only]').valid();
fonctionne égalementUtilisez
Validator.element()
:Voici l'exemple montré dans l'API:
.valid()
valide l'ensemble du formulaire, comme d'autres l'ont souligné. L'API dit:la source
Pour une raison quelconque, certaines des autres méthodes ne fonctionnent pas tant que le champ n'a pas été ciblé / estompé / changé, ou qu'une soumission a été tentée ... cela fonctionne pour moi.
J'ai dû fouiller dans le script jquery.validate pour le trouver ...
la source
.valid()
à la fin donc il m'a cherché.$("#Form").data('validator').element('input[name=__Suburb]').valid();
Je crois que si vous ne le sélectionnez pas par ID, cela pourrait être nécessaire..valid()
appartenir à la fin de l'expression. La.element()
fonction renvoie un résultat booléen ( docs | src ). Quand j'essaye d'appeler .valid () j'obtiens le message d'erreur: "Uncaught TypeError:$(...).data(...).element(...).valid
is not a function"la source
Lorsque vous configurez votre validation, vous devez enregistrer l'objet validateur. vous pouvez l'utiliser pour valider des champs individuels.
- croisé avec cette question similaire
la source
Si vous souhaitez valider un champ de formulaire individuel, mais que vous ne voulez pas que l'interface utilisateur soit déclenchée et affiche des erreurs de validation, vous pouvez envisager d'utiliser la méthode Validator.check () qui retourne si le champ donné passe la validation ou non.
Voici un exemple
la source
au cas où vous voudriez faire la validation de "certains éléments" (pas tous les éléments) sur votre formulaire. Vous pouvez utiliser cette méthode:
J'espère que cela aidera tout le monde :)
ÉDITÉ
la source
la source