J'utilise la [select2 demo] d'Oleg (http://www.ok-soft-gmbh.com/jqGrid/UsageFormetterSelect2.htm), mais je me demande s'il est possible de modifier la valeur actuellement sélectionnée dans le menu déroulant.
Par exemple, si les quatre valeurs chargées étaient : Par exemple, si les quatre valeurs chargées sont : " Tout ", " Fruit ", " Légume ", " Viande " et que la liste déroulante est par défaut " Tout ", comment pourrais-je la changer en " Fruit " dans l'événement " loadComplete " de la JqGrid ?
Est-ce possible ?
En regardant la [docs select2] (http://ivaynberg.github.io/select2/#documentation), vous utilisez l'élément ci-dessous pour obtenir ou définir la valeur.
$("#select").select2("val"); //get the value
$("#select").select2("val", "CA"); //set the value
@PanPipes a signalé que cela a changé pour 4.x (allez lui envoyer un upvote ci-dessous). val
est maintenant appelé directement
`$("#select" ;).val("CA" ;);``
Ainsi, dans le loadComplete
de la jqGrid, vous pouvez obtenir la valeur que vous recherchez puis définir la valeur de la boîte de sélection.
Remarquez dans la documentation
Remarquez que pour utiliser cette méthode, vous devez définir la fonction initSelection dans les options afin que Select2 sache comment transformer l'identifiant de la boîte de sélection. transformer l'identifiant de l'objet que vous passez dans val() en l'objet complet dont elle a
dont il a besoin pour rendre la sélection. Si vous vous attachez à un élément de sélection cette fonction est déjà fournie pour vous.
Je voulais juste ajouter une deuxième réponse. Si vous avez déjà rendu la sélection en tant que select2, vous devrez le refléter dans votre sélecteur comme suit :
$("#s2id_originalSelectId").select2("val", "value to select");