Afficher ou cacher un champ (fonction radio)

xstorias -  
 amina181 -
Bonjour,
Voila, j'ai un soucis dans un formulaire
J'ai un bouton radio avec comme choix oui et non
et j'aimerai que quand on choisi OUI, ça cache le champs en desssus et quand on choisit non, ca l'affiche
En clair, quand la personne choisi : OUI pour j'habite a paris, ca ne doit pas afficher le champs, adresse de livraison et quand la personne choisi non, ca doit l'affichier

Merci de m'aider

Voila mon code sources

</table><table width="566" border="0" align="center"><tr>
<td width="140"><div align="right"><font face="Verdana" size="2">Habitez-vous sur Paris?</font></div></td>
<td width="30" align="center" valign="middle">
<?php
if ($erreur_bouton1) {
echo($icone);
}
?>
</td>
<td><input type="radio" name="bouton1" value="Oui"<?php
if ($_SESSION['bouton1'] == "Oui") {
echo(" checked");
}
?>><font face="Verdana" size="2">Oui</font><br><input type="radio" name="bouton1" value="Non"<?php
if ($_SESSION['bouton1'] == "Non") {
echo(" checked");
}
?>><font face="Verdana" size="2">Non</font></td></tr></table><td width="140" valign="top"><div align="center"><font face="Verdana" size="2"><table width="566" border="0" align="center"><tr>
<td width="140" valign="top"><div align="right"><font face="Verdana" size="2">Merci d'indiquez l'adresse de livraison</font></div></td>
<td width="30" align="center" valign="top">
<?php
if ($erreur_texte1) {
echo($icone);
}
?>
</td>
<td><textarea name="zone_texte1" cols="45" rows="5"><?=stripslashes($_SESSION['zone_texte1']);?></textarea></td>
</tr></table>
A voir également:

17 réponses

Xil Messages postés 351 Statut Membre 257
 
</table><table width="566" border="0" align="center"><tr>
<td width="140"><div align="right"><font face="Verdana" size="2">Habitez-vous sur Paris?</font></div></td>
<td width="30" align="center" valign="middle">
<?php
if ($erreur_bouton1) {
echo($icone);
}
?>
</td>
<td><input type="radio" name="bouton1" onclick="document.getElementById('zone_texte1').style.display='none';document.getElementById('label_adres').style.display = 'none';" value="Oui"<?php
if ($_SESSION['bouton1'] == "Oui") {
echo(" checked");
}
?>><font face="Verdana" size="2">Oui</font><br><input type="radio" name="bouton1" onclick="document.getElementById('zone_texte1').style.display='block';document.getElementById('label_adres').style.display = 'block';" value="Non"<?php
if ($_SESSION['bouton1'] == "Non") {
echo(" checked");
}
?>><font face="Verdana" size="2">Non</font></td></tr></table><td width="140" valign="top"><div align="center"><font face="Verdana" size="2"><table width="566" border="0" align="center"><tr>
<td width="140" valign="top" align="right"><div align="right"><font face="Verdana" size="2"><span id="label_adres" style="display:<?php echo($_SESSION['bouton1'] == "Oui" ? 'none' :'block'); ?>" >Merci d'indiquez l'adresse de livraison</span></font></div></td>
<td width="30" align="center" valign="top">
<?php
if ($erreur_texte1) {
echo($icone);
}
?>
</td>
<td><textarea name="zone_texte1" id="zone_texte1" cols="45" rows="5" style="display:<?php echo($_SESSION['bouton1'] == "Oui" ? 'none' :'block'); ?>"><?php echo stripslashes($_SESSION['zone_texte1']);?></textarea></td>
</tr></table>


Voila. Essaye de comprendre le fonctionnement, c'est toujours mieux que de copier coller ^^
Ca serait plus propre de mettre le javascript dans une fonction, mais dans ce cas-ci, ca ne gène pas vraiment.
5
Xil Messages postés 351 Statut Membre 257
 
<input type="radio" name="button1" value="oui" onclick="document.getElementById('adres').style.display='none';">
<input type="radio" name="button1" value="non" onclick="document.getElementById('adres').style.display='block';">

<textarea name="adres" id="adres" style="display:<?php echo ($_SESSION['button1']== 'oui' ? 'none' : 'block');?>;"></textarea>


En gros.
3
Alex
 
Oriente toi du coté d'un code javascript ou flash pour faire cela
1
xstorias
 
oui, ca un code javascript à ajouter mais je ne sais pas comment faire! Je sais que c'est possible, mais je n'y arrive pas!
1
borhen
 
vous pouvez utiliser javascript
<head>
<script language="javascript">

function ChoixClic(radio,saisirdessin)
{
if(document.getElementById(radio).checked)
{
document.getElementById(saisirdessin).style.visibility='visible';
document.getElementById(saisirdessin).style.display='block';
}
else
{
document.getElementById(saisirdessin).style.visibility='hidden';
document.getElementById(saisirdessin).style.display='none';
}
}
</script>
</head>

<body>
<body>
<form action="" name="form1" methed="post">
<input type="checkbox" id="check1" onClick="ChoixClic('check1','view')" />
<div id="view" style="display:none"><input type ="text"></div>

</form>
</body>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Xil Messages postés 351 Statut Membre 257
 
C'était un exemple de ce qu'il fallait faire ;)

Tu dois ajouter la partie "onclick" dans chacun de tes radio boutons.
Tu dois ajouter un attribut ID à ta zone de texte pour l'adresse.
Tu dois ajouter l'attribut style à ta zone de texte pour l'adresse.
Tu dois modifier le "getElementById('adres')" en "getElementById('id_de_ton_champ_adresse')"

Ensuite remontre ton code, je te dirai s'il est correct.
[Je pars du boulot, je repasserai plus tard dans la soirée ;)]
1
Xil Messages postés 351 Statut Membre 257
 
Tu peux rajouter une balise span autour de ton texte, comme ceci :
<span id="label_adres" style="display:<?php echo ($_SESSION['button1']== 'oui' ? 'none' : 'block');?>;">Merci d'indiquez l'adresse de livraison</span>

et du coup rajouter dans les 'onclick' des bouton :
document.getElementById('label_adres').style.display='none/block';

Si tu as compris le principe ca devrait aller tout seul (surtout si tu comprend l'anglais). Sinon je te mettrai le code demain, je n'ai pas trop le temps ce soir.
1
xstorias
 
J'ai réussi, mais il me reste plus qu'a réussi maintenant à supprimer le texte "Merci d'indiquez l'adresse de livraison" en meme temps que le champ, tu sais comment je pourrai réussir?

Merci
0
xstorias
 
Après si tu as le temps de m'aider, il faudrai aussi que je réussisse à faire ca :

http://www.commentcamarche.net/forum/affich 5029694 ajouter un bouton et faire un recapitulatif
0
xstorias
 
OK, merci de m'envoyer le code demain
J'ai presque réussi, le soucis, c'est que soit c'est cacher tout le temps ou ca apparait tout le temps, ca doit pas être grand chose, mais si tu peux me le faire demain ca serai cool!

Merci
0
xstorias
 
Merci beaucoup, j'ai réussi, ca fonctionne parfaitement!
0
xstorias
 
Es ce que tu pense pouvoir m'aider pour ce soucis?

http://www.commentcamarche.net/forum/affich 5029694 ajouter un bouton et faire un recapitulatif
0
Xil Messages postés 351 Statut Membre 257
 
Ca demande un certain travail...
Au boulot je ne peux me permettre que des petites réponses, et en dehors du boulot je suis en plein déménagement, et je travaille sur d'autres projets...
Désolé :/
0
amina181
 
slt
j'ai le meme prob mé avec <select></select>,et j'ai aucune idée ,si quelqu'un peut m'aider,merci d'avance.
-1
xstorias
 
Personne ne sais comment faire?
-2
xstorias
 
je dois mettre où ce code?
-2
xstorias
 
Ca ne marche pas, ca m'ajoute 2 boutons que j'ai déja et quand je clique sur un j'ai un champs qui apparait et quand je clique sur l'autre, il disparait! c'est a peut près ca que je veux, mais il ne convient pas dans le code source que j'ai posté!
Merci en tout cas de ton aide
Si tu peux voir pour me l'intégrer à mon code source, ca serai parfait
-2
xstorias
 
Oula, je comprends rien du tout, je débute!
Tu pourrai pas me le modifier?

Merci d'avance
-2