Skip to content

Drupal – Comment masquer l’option “N/A” par défaut pour les cases à cocher ?

Solution:

Vous pouvez utiliser jQuery pour accomplir cela

$("#edit-field-gender-und-none").remove();

Je pense qu’une meilleure façon d’y parvenir serait d’écrire un simple hook form_alter et unset() l’option que vous ne voulez pas de votre domaine.

function YOURMOD_form_YOURFORM_alter(&$form, &$form_state) {
  unset($form['YOURFIELD']['und']['#options']['_none']);
}

dans l’exemple ci-dessus, le champ est un champ de référence de taxonomie sur un formulaire d’édition d’entité, il y a donc l’extra ['und'] – il n’a pas à être là sous toutes les occasions. Vous voudrez peut-être dpm($form) d’abord, pour voir la structure du formulaire.

Une autre solution rapide consiste à demander à Drupal d’ajouter une classe désactivée par formulaire à l’élément de formulaire N/A en ajoutant la fonction suivante à votre fichier template.php.

function <theme_name>_form_element($variables) {
  $element = $variables['element'];
  // Disable radio button N/A
  if ($element['#type'] == 'radio' && $element['#return_value'] === '_none') {
    $variables['element']['#attributes']['disabled'] = TRUE;
  }
  return theme_form_element($variables);
}

Ensuite, vous pouvez utiliser CSS pour faire

.form-radios .form-disabled {
  display: none;
}



Articles Similaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.