Formulaire

Fermé
vince75008 Messages postés 5 Date d'inscription mardi 24 juin 2014 Statut Membre Dernière intervention 24 juin 2014 - 24 juin 2014 à 10:48
alexdu17200 Messages postés 1302 Date d'inscription mardi 4 juin 2013 Statut Membre Dernière intervention 7 mars 2016 - 24 juin 2014 à 15:03
Bonjour,
Je voudrais pouvoir faire un click sur un titre et faire apparaitre ou disparaitre des éléments de formulaire.
Ex: Je suis un professionnel alors je click sur l'onglet "PRO" et apparait la liste concernant le formulaire PRO.
Je veux pouvoir avoir un formulaire ou le client puisse choisir ce qui correspond à son profil sans à avoir les questions qui ne le concernent pas.
Merci d'avance....

2 réponses

alexdu17200 Messages postés 1302 Date d'inscription mardi 4 juin 2013 Statut Membre Dernière intervention 7 mars 2016 835
24 juin 2014 à 10:53
Salut, il nous faudrait plus d'information, déjà en quel(s) langage(s) souhaites-tu coder ce formulaire?

Tu peux le faire très très simplement en PHP et JS
0
vince75008 Messages postés 5 Date d'inscription mardi 24 juin 2014 Statut Membre Dernière intervention 24 juin 2014
24 juin 2014 à 10:56
Je veux que ce soit le plus simple possible car le formulaire est très long donc peu importe.
0
alexdu17200 Messages postés 1302 Date d'inscription mardi 4 juin 2013 Statut Membre Dernière intervention 7 mars 2016 835
24 juin 2014 à 11:04
Le truc, c'est déjà savoir où tu vas faire ce formulaire, si tu vas coder entièrement la page, ou si tu vas utiliser un générateur...

A mon humble avis, tu utiliser cette fonction dans ta balise <head> de ta page <html>
<script type="text/javascript">
    function GereControle(Controleur, Controle, Masquer) {
    var objControleur = document.getElementById(Controleur);
    var objControle = document.getElementById(Controle);
        if (Masquer=='1')
            objControle.style.display=(objControleur.checked==true)?'none':'inline-block';
        if (Masquer=='2')
            objControle.style.display=(objControleur.checked==true)?'inline-block':'none';
        return true;
   }
</script>


Et placer une checkbox (case à cocher) sur ta page (en dehors du formulaire), qui lorsqu'elle sera cochée afficher pro_form, et masquera particulier_form.
<input name="pro_true" style='display:none;' type="checkbox" id="pro_true" onClick="GereControle('pro_true', 'pro_form', '1');GereControle('pro_true', 'particulier_form', '2');">

Il te suffira de placer id='pro_form' dans la balise <form> de ton formulaire.
0
vince75008 Messages postés 5 Date d'inscription mardi 24 juin 2014 Statut Membre Dernière intervention 24 juin 2014
24 juin 2014 à 11:21
Je dois coder entiérement la page... je vais essayer ce script, en tout cas vraiment merci pour ta réponse !!!
0
alexdu17200 Messages postés 1302 Date d'inscription mardi 4 juin 2013 Statut Membre Dernière intervention 7 mars 2016 835
24 juin 2014 à 11:28
Pas de problème, on est là pour t'aider, n'hésite pas si tu as d'autres questions à m'envoyer un message.

A+
0
vince75008 Messages postés 5 Date d'inscription mardi 24 juin 2014 Statut Membre Dernière intervention 24 juin 2014
24 juin 2014 à 11:39
En fait l'idéal ce serait que mes <legend> puissent faire apparaitre ou disparaitre les champs...
0
alexdu17200 Messages postés 1302 Date d'inscription mardi 4 juin 2013 Statut Membre Dernière intervention 7 mars 2016 835
Modifié par alexdu17200 le 24/06/2014 à 12:06
J'ignore si tu le sais déjà ou non, mais un élément de type <label> permet de pointer vers un input.
Ex: j'ai:
<input style='display:none;' type="checkbox" id="pro_true" ... >

Je n'avais pas fait attention mais le display:none masque l'élément et c'est ce que je t'ai mis plus haut (désolé), mais là, c'est utile.
Tu rajoutes
<label for='pro_true'><legend>Mon texte</legend></label>

Et dès que l'utilisateur va cliquer sur "Mon texte", la checkbox passera de checked à unchecked et donc affichera/masquera le bloc que tu auras défini.
0