Bonjour à tous,
Alors j'ai un problème avec mon formulaire et plus particulièrement sur le javascript. Je m'explique :
j'ai différentes questions qui composent mon formulaire. Plusieurs réponses sont affichées par question et seule une seule est possible par question, donc j'utilise les bouton radio.
Lorsque l'utilisateur valide le formulaire, si il a omis de cocher un bouton radio d'une question, je voudrai qu'une image (une croix rouge) s'affiche devant la question à laquelle il n'a pas répondu.
Mais je n'arrive pas à gérer cette action. voici mon javascript :
Code :
- <SCRIPT language="javascript">
- function Controle() {
- if(document.form1.question1[0].checked || document.form1.question1[1].checked || document.form1.question1[2].checked)
- {
- document.getElementById('div1').style.display='none';
- }
- else
- {
- document.getElementById('div1').style.display='block';
- }
- }
- </SCRIPT>
|
Et voici mon formulaire (allégé):
Code :
- <form id="formulaire" name="form1" method="post" action="">
- Question 1 :<div id="div1" style="display:none"><img src="img/croix_rouge.gif" /></div>
- <input type="radio" name="question1" value="reponse1" />
- Réponse 1
- <input type="radio" name="question1" value="reponse2" />
- Réponse 2
- <input type="radio" name="question1" value="reponse3" />
- Réponse 3
- <br />
- <br />
- <input type="submit" name="Submit" value="Valider" onClick="Controle();" />
- </form>
|
J'ai testé la condition du "if" avec des alert pour voir si elle fonctionne bien et pas de souci de ce côté là mais pour modifier le style.display du div là c'est une autre affaire!
Je souhaiterai savoir si il existe une autre manière de contrôler si un bouton radio est coché ou non (j'ai essayé le checked mais ça ne marche pas).
Comment réduire au maximum le code de mon javascript pour la totalité des questions (environ 15) notamment pour éviter de créer 15 "if" (1 par question).
Donc si quelqu'un peut m'aider ce serait sympa car je lutte sérieusement !
Merci beaucoup