bonjour j'ai un probleme concernant une fonction javascript qui permet d'afficher ou non un champ text.
c'est un questionnaire avec reponse dans <select><option>. les questions viennent d'une table question et les reponse de la table réponse. il y a autant de champ <select><otpion> qu'il existe de réponse. donc une question appel plusieurs réponses. par contre dans chaque <select><option> j'affiche une option "autre" qui, si elle est selectionné, permet d'afficher un champs text de cette manière si l'utilisateur ne trouve pas la réponse qui lui correspond il peut formuler lui même sa réponse.
voici ma fonction jav ascript qui permet de rendre ou non visible mon champ text si "autre" est cliké :
elle fonctionne et est appelée dans l'affichage d'une requete sql :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <script language="javascript"> function RendVisibleVille(texte) { if (texte=="autre") document.getElementById("test").style.visibility= 'visible'; else document.getElementById("test").style.visibility= 'hidden'; } </script>
voici mon problème :
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 $nbQuestion = 0; $lResult3 = $lCoupon->SelectQuestion();//ici on affiche la question et on recupere son id foreach ($lResult3 as $row3) { $nbQuestion++; echo '<p>'; echo $row3['intitule_question']; echo '</p>'; $question=$row3['id_question']; $lResult4 = $lCoupon->SelectReponse($question); //ici on affiche les reponse possible correspondante a ll'id de la question echo " <SELECT size=1 onchange='RendVisibleVille(this.value)' name='reponse".$nbQuestion."'> "; foreach ($lResult4 as $row4) { //affichage des reponse possible dasn option $reponse=$row4['id_reponse']; echo "\n".'<option value='.$row4['id_reponse'].'>'; echo $row4['intitule_reponse']; //echo $reponse; echo '</option>'; $recherche2=$_POST['recherche2']; } //après on affiche 1 champ autre dans tou les <select> echo "<OPTION value='autre'>autre</OPTION></SELECT>"; ?><p> <div id="test" style="visibility:hidden"> <input type="text" name="reponse"></div> </p>
on appel toujour cette fonction qlqsoit le "autre" selectionner : c'est a dire si je ckik sur le autre de la question numéro 4 le champ test saffichera a la fin de la première question. donc c toujour le mm champ text qui apparait puique la fonction appelé porte toujour le mme nom. il n'y a donc qu'un seul champ text qui est généré.
voilà jespere que j'ai été assez clair.
je vous remercie beaucoup pour votre
Partager