J'utilise Ctools Dependency pour rendre un fieldset hideable. Cela fait partie de mon code:Drupal: Comment faire en sorte qu'un fieldset dépende de CTools
$form['profile-status'] = array(
'#type' => 'radios',
'#title' => '',
'#options' => array(
'new' => t('Create a new profile.'),
'select' => t('Use an existing profile.'),
),
);
$form['select'] = array(
'#type' => 'select',
'#title' => t('Select a profile'),
'#options' => $options,
'#process' => array('ctools_dependent_process'),
'#dependency' => array('radio:profile-status' => array('select')),
);
$form['profile-properties'] = array(
'#type' => 'fieldset',
'#title' => t('View the profile'),
'#process' => array('ctools_dependent_process'),
'#dependency' => array('radio:profile-status' => array('select')),
'#input' => true,
);
Dans extrait ci-dessus, il y a deux éléments, une sélection et un fieldset. Les deux ont des paramètres #process et #dependency et tous deux pointent vers un champ pour la valeur dépendante. Le problème est que des éléments comme select ou textfield peuvent être cachés facilement mais cela ne fonctionne pas pour fieldset. Dans this page de demande de soutien, le créateur CTools a mentionné que '#input' => true
est un travail autour. Comme vous le voyez, je l'ai ajouté au code, mais ça ne marche pas aussi bien.
Avez-vous une suggestion?