J'essaie de changer l'option actuellement sélectionnée dans une sélection avec le plugin Chosen.
La documentation couvre la mise à jour de la liste et le déclenchement d'un événement lorsqu'une option est sélectionnée, mais rien (que je peux voir) sur la modification externe de la valeur actuellement sélectionnée.
J'ai créé un jsFiddle pour illustrer le code et mes tentatives de modification de la sélection:
$('button').click(function() {
$('select').val(2);
$('select').chosen().val(2);
$('select').chosen().select(2);
});
Réponses:
À partir de la section "Mettre à jour le choix dynamiquement" dans la documentation : vous devez déclencher l'événement "choisi: mis à jour" sur le terrain
REMARQUE: les versions antérieures à 1.0 utilisaient les éléments suivants:
la source
chosen:updated
place deliszt:updated
$('select').val(2).trigger("chosen:updated");
$('select').val(2);
en$('select').val(2).change();
, car la modification de l'option sélectionnée d'un select avec jQuery ne déclenche pas l'événement de changement et certaines personnes pourraient en avoir besoin.Ma réponse est tardive, mais je veux ajouter des informations qui manquent dans toutes les réponses ci-dessus.
1) Si vous souhaitez sélectionner une valeur unique dans la sélection choisie.
2) Si vous utilisez la sélection multiple, vous devrez peut-être définir plusieurs valeurs à la fois.
Informations recueillies à partir des liens suivants:
1) Chosen Docs
2) Chosen Github Discussion
la source
Parfois, vous devez supprimer les options actuelles afin de manipuler les options sélectionnées.
Voici un exemple de configuration des options:
JSFiddle (y compris comment ajouter des options): https://jsfiddle.net/59x3m6op/1/
la source
var selected = mySelect.val();
à jour à lavar selected = mySelect.val() || [];
place.En cas de type multiple de sélection et / ou si vous souhaitez supprimer les éléments déjà sélectionnés un par un, directement dans les éléments d'une liste déroulante, vous pouvez utiliser quelque chose comme:
la source