Recherche précédente forte>: Pour créer un champ conditionnel, vous pouvez utiliser harok_form_alter () pour éditer le #states attribut comme: p> Cependant, il semble y avoir aucun moyen d'utiliser les API des États pour les groupes de terrain. Une chose à noter est que, alors que les champs sont stockés dans question strong>: Existe-t-il un moyen de faire une affichage de groupe de terrain conditionnellement à l'aide de l'API des États ou une approche alternative? P> P> P> > $ formulaire code>, les groupes de champs sont stockés dans
$ formulaire ['# groups'] code> ainsi que dans
$ formulaire ['#feldGroups'] code>. Je ne sais pas comment distinguer entre eux, et dans cet esprit, j'ai essayé d'appliquer un # stipule attribut à un groupe de terrain de la même manière que ci-dessus. Cependant, il ne produit que des erreurs de serveur. P>
3 Réponses :
Peut-être que vous pouvez essayer de regarder le code de Ce module pour vous aider à trouver une idée. < / p>
Merci pour le conseil. Je n'ai réellement fini par regarder parce que j'ai eu quelque chose à travailler enfin. Découvrez la solution postée si vous êtes intéressé.
Voici la solution la plus simple que j'ai proposée. Il y a essentiellement 2 parties à ceci: (1.) altérer par programme l'affichage du formulaire et (2.) Utilisez l'interface graphique pour modifier l'affichage du contenu.
(1.) Tout d'abord, j'ai utilisé Hook_Form_alter () Pour créer de manière programmable dans les champs conditionnels et ajouter des champs existants à celui-ci. Le code est indiqué ci-dessous. p>
Wow, c'est beaucoup plus élégant que ma solution! Merci!
Ce genre de travail pour moi mais j'ai rencontré un problème majeur. Lors de la création d'un nœud d'un type de contenu différent, ce code serait toujours exécuté. Et lorsque j'ai essayé de mettre une condition dans le code pour vérifier le type de nœud spécifique, il est apparu que l'élément $ a été porté sur des valeurs de l'autre formulaire à celui-ci. Problème principal: le type de nœud était incorrect. Quelqu'un d'autre l'expérite-t-elle? Je suis sur d7.
@Mtsrb Essayez une condition sur l'élément $ ['# form_id'] code>