2010-04-12 3 views
19

J'utilise jQuery valide pour la validation du côté client et je veux ignorer tout élément qui a le style="display: none"jQuery Valider Ignorer les éléments avec un style

$("#myform").validate({ 
    ignore: "?" 
}); 

Qu'est-ce que mon sélecteur soit pour que, dans le cas ci-dessus?

Répondre

49

Remarque: Depuis la version 1.9.0, ignore: ":hidden" est l'option par défaut, il n'est donc plus nécessaire de la définir explicitement.


Utilisation :hidden:

Les éléments peuvent être considérés comme cachés pour plusieurs raisons:

  • Ils ont une valeur d'affichage de personne.
  • Ce sont des éléments de formulaire avec type = "hidden".
  • La largeur et la hauteur sont explicitement définies sur 0.
  • Un élément ancêtre est masqué, de sorte que l'élément n'apparaît pas sur la page.
$("#myform").validate({ 
    ignore: ":hidden" 
}); 

Mise à jour: pour être complet, de la plugin's documentation:

ignorer
éléments à ignorer lors de la validation, de les filtrer simplement. -method est utilisé, donc tout ce qui est accepté par not() peut être passé comme cette option. Les entrées de type submit et reset sont toujours ignorées, ce sont donc des éléments désactivés.

+0

@Felix: Y at-il un moyen d'obtenir validate() pour renvoyer une valeur booléenne? – Gabe

+1

@gmcalab: Que devrait indiquer cette valeur? Il renvoie un 'Validator': http://docs.jquery.com/Plugins/Validation#Validator –

+0

@Felix merci, joli lien! En ce moment, la forme() est toujours pas valider, sa validation encore les champs cachés .... – Gabe

5

http://api.jquery.com/hidden-selector/

":hidden"

est ce que vous cherchez.

Les éléments peuvent être considérés comme cachés pour plusieurs raisons:

  • Ils ont une valeur d'affichage de personne.
  • Ce sont des éléments de formulaire avec type = "hidden".
  • La largeur et la hauteur sont explicitement définies sur 0.
  • Un élément ancêtre est masqué, de sorte que l'élément n'apparaît pas sur la page.

Je pense que ce serait peut-être mieux.

+0

Pourquoi voudrais-je ignorer les champs visibles? – Gabe

+0

Oups, je pensais mettre un non() autour mais je l'ai juste vu caché, changé. – AjayP

Questions connexes