J'ai un multi-select déroulant comme suit, où j'ai sélectionné les options "Test 2" et "Test 3".
<select id="edit-rec" class="form-select" multiple="multiple" name="rec[]">
<option value="6012">Test 1</option>
<option value="8436">Test 2</option>
<option value="4689">Test 3</option>
<option value="6784">Test 4</option>
</select>
J'ai un bouton appelé "Tout désélectionner". Lorsque ce bouton est cliqué, tous les éléments sélectionnés doivent être désélectionnés . Dans ce cas, les éléments que j'ai précédemment sélectionnés, "Test 2" et "Test 3", doivent maintenant être désélectionnés.
Comment puis-je accomplir cela en utilisant jQuery?
$("#edit-rec option:selected").removeAttr("selected");
En cliquant sur le bouton radio, vous pouvez utiliser cette
$("#edit-rec option").each(function(){
this.selected=false;
});
Toutes les options cochées de multiselect dropdownlist seront supprimées:
$ ('# ddlTradeShow'). multiselect ("clearSelection");
$("#edit-rec option:selected").removeAttr("selected");
$("#butt").click(function () {
$("#edit-rec > option").removeProp("selected");
});
c'est correct avec la nouvelle version de jQuery
Le moyen le plus simple que j'ai trouvé de désélectionner toutes les options dans une liste déroulante à sélections multiples était d'utiliser .val([])
.
$("#select").val([]);
Peut faire quelque chose comme ceci JS Fiddle pour configurer le clic sur le bouton radio http://jsfiddle.net/x5ck3/
$('#rdClear').click(
function() {
$("#edit-rec option:selected").removeAttr("selected");
});
Il existe maintenant une autre possibilité directement fournie par l’API:
$('#edit-rec').multiSelect('deselect_all');
Fonctionne bien, vous trouverez ici plus d'options: http://loudev.com/