web-dev-qa-db-fra.com

Comment effacer tous les éléments sélectionnés dans une entrée SELECT en utilisant jQuery?

Je pense que cela devrait être assez facile, mais en train de lutter un peu ... J'ai un élément d'entrée SELECT qui permet à l'utilisateur de sélectionner plusieurs éléments. Je voudrais fournir un mécanisme pour eux pour effacer tous les éléments sélectionnés, sera probablement juste une balise SPAN ou quelque chose de similaire. 

Quoi qu'il en soit ... en utilisant jQuery, comment puis-je effacer la sélection sur l'élément d'entrée SELECT afin qu'aucun élément ne soit sélectionné.

26
mattruma

Dans le cas d'un <select multiple> la fonction .val() prend/retourne un tableau, vous pouvez donc simplement passer un tableau vide pour effacer la sélection, comme ceci:

$("#selectID").val([]);

Vous pouvez le tester ici .

74
Nick Craver

Cela a fonctionné pour effacer toutes les options sélectionnées pour moi ..

$ ("# selectListName"). prop ('selectedIndex', -1)

La liste de sélection ressemblait à

<select multiple='multiple' id='selectListName'> 
<option>1</option> 
<option>2</option> 
<option>3</option> 
<option>4</option>
</select>
5
roblem

Essayer:

$("select option:selected").each(function () {
    $(this).remove(); //or whatever else
});
4
Darmen

Seulement cela a fonctionné pour moi: -

$("#selectid").find('option').attr("selected",false) ;
3
Steve

j'essaie quelque chose comme

$("#my-Select").find('option').attr("selected","") ;
2
Haim Evgi

Mieux que cela, vous pouvez utiliser: 

$("#selectID").empty();

Cela fonctionne sur presque tout dans le DOM.

0
Hexxefir

Essaye ça

<select id='select1' ></select>
<input type= 'button' value = 'Clear Selection' id = 'remove' />

$(document).ready(function() {  
   $('#remove').click(function() {  
     return $('#select1 option:selected').remove(); 
   });
 });
0
Poonam Bhatt
Maybe 

$('#mySelect option').each(function(i, e)
{
   e.selected = false
});
0
Lourens