J'ai une option SELECT 2 MULTI-SELECT
var s2 = $("#selectEvents").select2({
placeholder: "Choose event type",
tags: true
});
s2.val(["Trade Fair", "CA", "Party"]).trigger("change"); //CA doesn't show as a default
3 Réponses :
Faire un peu de creuser, je peux voir ce problème soulevé sur Github .
Une option est de vérifier si la valeur existe si la valeur existe et p> Ajoutez code> si cela ne le fait pas. P> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.css" rel="stylesheet"/>
<select multiple name="event_type[]" class="form-control" id="selectEvents">
<option>Trade Fair</option>
<option>Party</option>
<option>Foo</option>
<option>Bar</option>
</select>
J'ai récemment dû mettre en œuvre un Select2 avec des options 'multiple' et 'Tags' dans un script PHP et a rencontré un problème similaire. La documentation a déclaré ajouter toutes les sélections initiales en tant que balises options HTML, mais lorsque j'ai essayé d'ajouter deux, un seul apparaîtrait dans ma commande SELECT2.
J'ai fini par initialiser la commande SELECT2 avec l'option "Données" de configuration, que je créerais de manière dynamique. p>
p>
<div>
<label for="properties">Properties</label>
<select name="properties[]" id="properties">
</select>
</div>Un autre moyen simple est de la valeur définie pour sélectionner l'option et le faire SELECT2 Encore: p>
$('#province').val(["3", "4", "5"]).trigger('change');
Voir cette autre réponse ici: Stackoverflow.com/a/42576487/1635774