En utilisant core jQuery, comment supprimez-vous toutes les options d'une boîte de sélection, puis ajoutez une option et sélectionnez-la?
Ma case de sélection est la suivante.
<Select id="mySelect" size="9"> </Select>
EDIT: Le code suivant a été utile pour le chaînage. Cependant (dans Internet Explorer) .val('whatever')
n'a pas sélectionné l'option qui a été ajoutée. (J'ai utilisé la même «valeur» dans les deux .append
et .val
.)
$('#mySelect').find('option').remove().end()
.append('<option value="whatever">text</option>').val('whatever');
EDIT: En essayant de le faire imiter ce code, j'utilise le code suivant chaque fois que la page / le formulaire est réinitialisé. Cette case de sélection est remplie par un ensemble de boutons radio. .focus()
était plus proche, mais l'option ne semblait pas sélectionnée comme elle le fait avec .selected= "true"
. Rien ne va mal avec mon code existant - j'essaie juste d'apprendre jQuery.
var mySelect = document.getElementById('mySelect');
mySelect.options.length = 0;
mySelect.options[0] = new Option ("Foo (only choice)", "Foo");
mySelect.options[0].selected="true";
EDIT: la réponse sélectionnée était proche de ce dont j'avais besoin. Cela a fonctionné pour moi:
$('#mySelect').children().remove().end()
.append('<option selected value="whatever">text</option>') ;
Mais les deux réponses m'ont conduit à ma solution finale ..