formulaire dynamique avec webform

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour j'ai installé un formulaire webform mais j'aimerais le rendre un peu dynamique. En effet je suis entrain de réaliser un siteweb de location/vente des voitures, il y'a une petite liste déroulante proposant les services offerts et j'aimerais que quand on choisit acheter une voiture par exemple les champs que j'ai crée pour compléter les dates de début et de fin de location disparaissent ou soient désactives.
Comment puis- je faire SVP

Version de Drupal : 

Les hooks? Pas encore, mais je trouve que webform conditional pourrait faire ce que je veux reste a savoir comment l'utilisé... J'ai installé webform conditional mais maintenant je ne sais plus quoi faire... quelqu'un pourrais me dire comment utilise ce module SVP???

Bonjour,

Il serait maintenant temps de paser à la version 7... celle proposée est le 7.14

dans cette version, et avec les versions de module qui sont appropriées:

Quand tu est dans le webform, tu choisis un champ auquel tu souhaites ajouetr une condition
tu clique sur modifier

Vers le bas tu trouve un titre "Conditional Rules"

Tu choisis pour Component une valeur qui est celle sur laquelle tu souhaite faire la conditionalité

Tu choisis un type d'operateur

et dans Values, tu met les valeurs voulues...

et voila!

bonne journée


function NOMDETONMODULE_form_alter(&$form, &$form_state, $form_id) { //dans ton .module
OU
function NOMDETONTHEME_form_alter(&$form, &$form_state, $form_id) { // dans ton template.php
    switch($form_id){

      //Case avec id de ton form
      case 'webform_form_143':

                dpm($form);    
               /Il faut installer devel pour que tu puisses voir ce que contient $form avec dpm($form) et voir les champs que tu souhaites modifier./

       unset($form['LE_CHAMPS_QUE_TU_VEUX_DESACTIVER']);.
     
      break;
}

le hook form_alter permet de modifier un formulaire.
Donc on l'appelle avec les paramètres qu'il faut (ceux que j'ai mi), ensuite à l'intérieur on fait un switch case pour faire le case on est sur notre form (en récupérant son id, visible dans le html de la page sur votre navigateur). Une fois cela fait on fait un dpm du form pour voir les champs qu'il y a dedans et la function unset permet de désactiver un champ. Je ne l'ai jamais fait alors je ne dis pas que c'est la solution mais on peut tjs essayer.