Salut,
y'a rien de plus simple.
Moi j'aurais fait comme cela.
Avant toute chose j'aurais mis
des actions sur tes boutons, en effet tu souhaite afficher un formulaire ou un autre
selon le choix d'un bouton de type radio.
Du coup en javascript j'avais déjà fait la fonction suivante:
et comme tu veux que la fonction s'exécute sur le clic du bouton tu as la condition onclick
voici donc ce que j'ai [javascript]onclick="setVisibility('champs', 'block');setVisibility('champs2', 'none')"[/javascript]
ici nous avons deux chose la fonction setvisibility qui s'exécute deux fois, mais qui va changer l'affichage de deux éléments
ici donc sur le clic on affiche le div qui contient l'id 'champs' et on cache le div qui a l'id 'champs2'
avec block tu affiche avec none tu cache. Ici c'est bien important d'utiliser le display block et none car si tu fais un simple hidden
alors tes champs seront juste cachés mais existeront bien.
Donc sur l'autre bouton tu dois mettre la condition inverse [javascript]onclick="setVisibility('champs2', 'none');setVisibility('champs', 'block')"[/javascript]
car lorsque tu clic sur un bouton tu affiche le premier div tu cache l'autre mais si tu clic sur l'autre tu affiche l'autre et tu cache le premier
ensuite voici la fonction à mettre juste après les boutons radios:
[javascript]<script language="JavaScript">
function setVisibility(id, visibility) {
document.getElementById(id).style.display = visibility;
}
</script>[/javascript]
Puis il te reste plus qu'à créer tes deux div qui vont contenir tes formulaires:
dans les balises
<body>
<div id="champs" style="display:none">
CONTENU DU FORMULAIRE
</div>
<div id="champs2" style="display:none">
CONTENU DU FORMULAIRE
</div>
</body>
Ici tu constatera que d'entrée de jeu les deux champs sont en style Display none
ce qui est normal car c'est le javascript et l'action sur les boutons qui va les afficher
en fonction du bouton sur lequel tu appui.
Bien à toi.
SP.