Bonjour à tous !
Je bloque sur un problème de dépendance : voici mon une partie de mon formulaire :
Je désire que les champs "equipier1" et "équipier2" soient obligatoires UNIQUEMENT si la personne a choisi les élément 4, 5 ou 6 dans la liste "select".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 <fieldset> <legend>Choix de la course</legend> <div class="rowElem"> <label for="course">Choix de la course<span>*</span> :</label> <select id="course" name="course" class="required true"> <option value="" selected="selected"></option> <optgroup label="Rando VTT 100Km"> <option value="1">Inscription seule 30</option> <option value="2">Inscription AVEC TRANSPORT au sommet 42</option> </optgroup> <optgroup label="Rando VTT 64Km"> <option value="3">Inscription seule 15</option> </optgroup> <optgroup label="Rando Tandem (Veuillez saisir le nom des 2 participants ci-dessous)"> <option value="4">Inscription seule 30 par personne</option> <option value="5">Inscription AVEC TRANSPORT au sommet 42 par personne</option> <option value="6">Inscription seule (Départ de Seillans, AUCUN TRANSPORT !) 15 par personne</option> </optgroup> </select> </div> </fieldset> <fieldset> <legend>Noms des équipiers (Course TANDEM uniquement !)</legend> <div class="rowElem"><label for="equipier1">Nom de l'équipier #1 :</label><input type="text" name="equipier1" id="equipier1" /></div> <div class="rowElem"><label for="equipier2">Nom de l'équipier #2 :</label><input type="text" name="equipier2" id="equipier2" /></div> </fieldset> <div class="rowElem"> <input type="submit" name="submit" id="submit" value="Valider l'inscription !" /> </div>
Voici mon code jquery pour l'instant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 <script type="text/javascript"> $(function() { $('#naissance').datepicker({ changeMonth: true, changeYear: true, yearRange:'-100:+0', minDate: '-100y', maxDate: '+0d', }); // $('form').jqTransform({imgPath:'jqtransformplugin/img/'}); $.validator.messages.required = "Ce champ doit être renseigné"; $.validator.messages.digits = "Ce champ doit contenir uniquement des chiffres"; $.validator.messages.email = "Ce champ doit contenir une adresse email valide (rodolfe@free.fr)"; $.validator.messages.date = "Ce champ doit contenir une date de la forme JJ/MM/AAAA"; //$.validator.messages.minlength = "Au minimum"; $.validator.messages.number = "Uniquement des chiffres"; $.validator.messages.cp = "Ce champ doit contenir 5 chiffres"; $.validator.messages.telephone = "Ce champ doit contenir 10 chiffres"; $("#form").validate({ rules: { equipier1: { required: "#course:true" } }, debug:true }); $("#course").click(function() { $("#equipier1").valid(); }); }); </script> Un énorme merci à qui peut me résoudre ça !
Partager