Comment est ce que je peux créer un formulaire ?

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.

Salut les amis,

Je dois créer un formulaire et y doit mettre un peu de dhtml pour les raisons suivantes :

1) Sur clique/sélection d'un checkbox un champs/textfield doit apparaitre, et sur déselection elle doit disparaitre.

2) Sur clique/sélection d'un checkbox un groupe de radiobuton doit apparaitre, et sur déselection il doit disparaitre.

J'ai créé mon formulaire avec le module "webform" mais je ne vois pas comment je peut y intégrer le dhtml.

Comment est-ce que je peux faire cela ?? Une idée??

Est-ce que je doit utiliser les forms APIs? Si oui est-ce qu'il y a documentation en français ?

Toute aide sera apprécié

Hello,

A priori, tu peux t'en sortir uniquement avec du JavaScript :

1) Tu crées un fichier JavaScript qui contient le code qui fait ce que tu veux. Ce code s'exécutera automatiquement au chargement de la page (événement "onload") et détectera les champs de formulaires appropriés dans le DOM. Il interceptera l'événement "onclick" de ces champs pour déclencher les opérations appropriées (affichage/masquage).

(Si tout ça te paraît compliqué, fais une recherche Google. C'est du JavaScript, pas du Drupal.)

2) Ensuite, il faut référencer le fichier JavaScript dans les pages de ton site. Le plus simple est d'éditer le fichier page.tpl.php de ton thème en rajoutant la ligne suivante quelque part à l'intérieur des balises <head> ... </head> :

<script type="text/javascript" src="mon_fichier.js"></script>

Cette technique s'appelle du "JavaScript non obtrusif" (cf. http://www.webreference.com/reviews/dom_scripting/).

PS. Il existe aussi un module qui ermet d'injecter du JavaScript dans les formulaires sans taper de code JavaScript proprement dit. Mais il implique de créer le formulaire en question via la FORM API : il s'agit de http://drupal.org/project/ahah_forms