0

Elgg: l’input pulldown et l’attribut « selected »

Print Friendly, PDF & Email

[ A+ ] /[ A- ]

Article publié le 19 juillet 2011

Derrière ce nom barbare se trouve en fait la question: Comment faire en sorte que dans un formulaire, une valeur d’une liste de choix soit déjà sélectionnée car associée à l’objet concerné?

 

Imaginez une seconde que vous avez un objet à classer dans une catégorie: une voiture dans la catégorie « voiture ». Vous avez ajouté l’objet dans la base de données mais vous devez faire une modification dans sa fiche. Par conséquent, vous avez besoin d’un formulaire d’édition contenant l’ensemble de ses données mais aussi les différentes catégories qui existent si vous devez changer la catégorie (vous avez mis la voiture dans la catégorie « salle » par exemple).

 

Dans mon fichier de départ, je récupère la ressource à modifier ainsi que les différentes catégories de ressource pour mon pulldown. Je prépare ce dernier tableau comme indiqué dans l’article Principe de l’input pulldown.

$area2 = elgg_view("grr/form_edit", array("types"=>$titles, "ressource"=>$ressource));

Ensuite, dans mon formulaire, ma ligne sera:

<?php echo elgg_view('input/pulldown', array('internalname'=>'domaines', 'options_values'=>$vars['types']));?>

 

Ceci affiche bien ma liste de choix avec les catégories mais la catégorie à laquelle ma ressource appartient n’est pas celle qui apparaît (par défaut, il a affiché la première catégorie du tableau $vars[‘type’]).

 

Comment faire?

 

Il suffit d’ajouter ‘value’=>$vars[‘ressource’]->domaines dans le tableau des options (mon objet a comme metadata domaines qui correspond à la catégorie à laquelle il appartient):

<?php echo elgg_view('input/pulldown', array('internalname'=>'domaines', 'options_values'=>$vars['types'], 'value'=>$vars['ressource']->domaines));?>
  • internalname = nom de l’input
  • options_values = tableau des options de la liste de choix
  • value = valeur qui doit être sélectionnée (par défaut ou correspondant à l’objet concerné)

 

Maintenant, vous savez comment faire en sorte qu’une valeur de la liste de choix soit sélectionnée par votre propre vouloir.

Vous avez trouvé l'article intéressant? Partagez-le!

Vinciane

Conseillère pédagogique et développeuse PHP, passionnée de nouvelles technologies, de l'histoire (particulièrement l'Antiquité et la Second Guerre Mondiale) et des jeux vidéo, j'aime écrire, tester et partager.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

3 + 8 =