Как очистить все выбранные элементы на входе SELECT с помощью jQuery? - PullRequest
28 голосов
/ 20 января 2011

Я думаю, что это должно быть довольно легко, но немного ... Я имею элемент ввода SELECT, который позволяет пользователю выбирать несколько элементов.Я хотел бы предоставить им механизм для очистки всех выбранных элементов, вероятно, это будет просто тег SPAN или что-то подобное.

В любом случае ... используя jQuery, как бы я очистил выделение на элементе ввода SELECT, чтобы ни один элемент не был выбран.

Ответы [ 8 ]

75 голосов
/ 20 января 2011

В случае <select multiple> функция .val() принимает / возвращает массив, поэтому вы можете просто передать пустой массив, чтобы очистить выделение, например:

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

Вы можете проверить это здесь .

5 голосов
/ 15 ноября 2013

Это сработало, чтобы очистить все выбранные опции для меня ..

$ ("# selectListName"). Список выбора выглядел как

<select multiple='multiple' id='selectListName'> 
<option>1</option> 
<option>2</option> 
<option>3</option> 
<option>4</option>
</select>
4 голосов
/ 20 января 2011

Попробуйте:

$("select option:selected").each(function () {
    $(this).remove(); //or whatever else
});
3 голосов
/ 19 февраля 2016

Только у меня сработало: -

$("#selectid").find('option').attr("selected",false) ;
2 голосов
/ 20 января 2011

я пытаюсь что-то вроде

$("#my-Select").find('option').attr("selected","") ;
0 голосов
/ 03 мая 2017

Лучше, чем это, вы можете использовать:

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

Это работает практически на всем в DOM.

0 голосов
/ 20 января 2011
Maybe 

$('#mySelect option').each(function(i, e)
{
   e.selected = false
});
0 голосов
/ 20 января 2011

Попробуйте это

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

$(document).ready(function() {  
   $('#remove').click(function() {  
     return $('#select1 option:selected').remove(); 
   });
 });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...