Boujour ,
je développe en php/ html.
j'ai un formulaire qui contien trois bouttons radion et je doit faire une fonction en jS qui m'affiche des <input type="text" ou non en fonction du bonton radio coché ?
(je suis un noob en javascript)
Boujour ,
je développe en php/ html.
j'ai un formulaire qui contien trois bouttons radion et je doit faire une fonction en jS qui m'affiche des <input type="text" ou non en fonction du bonton radio coché ?
(je suis un noob en javascript)
Oula il y a un truc que je comprends pas bien là :
Tu veut dire quoi par là ?et je doit faire une fonction en jS qui m'affiche des <input type="text" ou non en fonction du bonton radio coché ?
si tu veux j'ai trois radio box en fonction du bouton radio sélectionné je dois rafraichir ma page avec soit un input type text sans valeur prédéfinis, sois rien sois un input type text avec un valeur prédéfinis pour cela je doit faire une fonction JS qui gère cela
Donc si je comprend bien, seulement dans le cas de "l'input text avec valeurs prédéfinies" ??
Si c'est le cas alors il faut te pencher que tu écrive cela en PHP et non en JS ... Tu fais un select puis une boucle for ou tu ajoute tes options.
je shématise mon problème ce sera peut être plus clair:
° radio1
° radio2
° radio3
// si radio1 = 1
____________
|___________| // dans cette input text box il y a du contenu prédéfini
// si radio2 = 1
____________
|___________| // cette input text est vièrge
//si radio3 = 1 je n'affiche pas de input text
en javascript, tu as 2 possibilités:
1. tu utilises les CSS pour cacher/montrer la zone
2. ou alors la fonction du DOM createElement pour créer à la volée la zone:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 zone = document.createElement ('input'); zone.type = 'text'; zone.name = 'zone_texte'; document.forms[0].appendChild (zone);
le souci c'est que par exemple jai choisi le radio1 (donc j'ai un input text à l'écran) si je clik tout de suit après sur la radio3 l'input text devrait disparaitre et ce n'est le cas !
dans ce cas vaut mieux utiliser les css:
lazone étant l'id de ta zone texte
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <input type='radio' ... onclick="document.getElementById ('lazone').style.visibility = 'visible'; ">
c'est un exemple, faudrait mettre ca dans une fonction qui change de l'état visible à hidden selon l'état de départ
OK merci je vais teste ça !!
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>...</title> </head> <body> <form id="f" action=""> <p> <input type="radio" name="r" value="vide" />vide<br /> <input type="radio" name="r" value="rempli" />rempli<br /> <input type="radio" name="r" value="rien" />rien<br /> </p> <p id="new"> </p> <p> <input type="submit" /> </p> </form> <script type="text/javascript"> var n=document.getElementById("new"); var choix=document.getElementById("f").elements["r"]; var val, inp; for(i=0;i!=choix.length;i++){ choix[i].onclick=function(){ while(n.lastChild){ n.removeChild(n.lastChild) } val=this.value=="rempli" ? "contenu" : ""; if(this.value!="rien"){ inp=document.createElement("input"); inp.type="text"; inp.name="saisie"; inp.value=val; n.appendChild(inp); } } } </script> </body> </html>
J'ai trouver la solution à mon problème. le sujet peut être clos.
Merci à tous pour vos réponses rapides est éfficaces.
merci à toi de nous donner la solution en question (code?)
Partager