159 votes

jQuery validation requis sélectionnez

Je suis en train de valider l’élément select html en utilisant jQuery validation plugin. J’ai mis « requis » règle true mais il toujours validation passes parce que zéro est choisi par défaut. Est-il possible de définir une valeur vide qui sert de règle obligatoire ?

UPD. Par exemple. Imaginons que nous avons le contrôle html suivant :

Je veux Validation plugin pour utiliser la valeur « par défaut » dans le vide.

246voto

Andrew Coats Points 1020

Une solution plus simple a été décrit ici : [jQuery] Validate boîte de sélection

Établir la valeur se vide et ajouter l’attribut required

225voto

JMP Points 4276

Vous pouvez écrire votre propre article !

32voto

Funky Dude Points 2556

utiliser la règle de min

première valeur d’option la valeur 0

8voto

Je ne sais pas comment est le plugin le temps, la question a été posée (2010), mais j'ai connu le même problème aujourd'hui et résolu de cette façon:

  1. Donner votre balise select un nom d'attribut. Par exemple, dans ce cas

    <select name="myselect">

  2. Au lieu de travailler avec la valeur de l'attribut="valeur par défaut" dans la balise option, désactivez l'option par défaut ou définir la valeur="" comme suggéré par Andrew Manteaux

    <option disabled="disabled">Choose...</option>

    ou

    <option value="">Choose...</option>

  3. Définir le plugin règle de validation

    $( "#YOUR_FORM_ID" ).validate({ rules: { myselect: { required: true } } });

    ou

    <select name="myselect" class="required">

Obs: Andrew Coats solution ne fonctionne que si vous avez juste un select dans votre formulaire. Si vous voulez sa solution à travailler avec plus d'une sélectionnez ajouter un attribut de nom à votre sélection.

Espérons que cela aide! :)

1voto

Maycow Moura Points 21

C’est simple, vous devez obtenir la valeur du champ Select et il n’est pas « par défaut ».

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X