Быстрый способ очистить все выборки с включенным множественным выбором <select>с помощью jQuery? - PullRequest
33 голосов
/ 12 февраля 2010

Должен ли я пройти через ВСЕ и установить удаление атрибута selected, или есть лучший способ?

Ответы [ 10 ]

62 голосов
/ 12 февраля 2010

Просто найдите все выбранные теги <option> в вашем <select> и удалите атрибут selected:

$("#my_select option:selected").removeAttr("selected");

Начиная с jQuery 1.6, вы должны использовать .prop вместо удаления атрибута:

$("#my_select option:selected").prop("selected", false);
26 голосов
/ 16 июня 2014

Для того, чтобы очистить все выделение, я использую вот так, и он прекрасно работает для меня вот сценарий:

 $("#ddlMultiselect").multiselect("clearSelection");

 $("#ddlMultiselect").multiselect( 'refresh' );
3 голосов
/ 28 февраля 2014

Самый короткий и быстрый способ удалить все выделение - передать пустую строку в функцию jQuery .val ():

$("#my_select").val('')
2 голосов
/ 01 октября 2014

Это лучший способ очистить поле множественного выбора или список:

 $("#drp_assign_list option[value]").remove();
1 голос
/ 14 июня 2016

В JQuery:

  $("#id option:selected").prop("selected", false);
  $("#id").multiselect('refresh');
1 голос
/ 12 февраля 2010

jQuery's : выбранный селектор, вероятно, то, что вы ищете.

0 голосов
/ 13 декабря 2018
$('.selectpicker').selectpicker('deselectAll');

https://developer.snapappointments.com/bootstrap-select/methods/

0 голосов
/ 30 августа 2018

Вы можете передать пустой массив, чтобы отменить выбор всего выбора. Вот пример. Из документации

val() позволяет передавать массив значений элементов. Это полезно при работе с объектом jQuery, содержащим такие элементы, как, и s внутри , В этом случае входы и параметры имеют значение, которое совпадение с одним из элементов массива будет проверено или выбрано в то время как те, которые имеют значение, которое не соответствует одному из элементов массив будет не проверен или не выбран , в зависимости от типа.

$('.clearAll').on('click', function() {
  $('.dropdown').val([]);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<select class="dropdown" multiple>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>

<button class='clearAll'>Clear All Selection</button>
0 голосов
/ 31 августа 2017

Предполагается, что вы используете выпадающий список Bootstrap от David Stutz

$('#selectId').multiselect('deselectAll', false);

Но по какой-то причине он не работает внутри метода инициализации

0 голосов
/ 09 марта 2017

В JavaScript,

Вы можете использовать список всех опций раскрывающегося списка множественного выбора, который будет циклом Array.Then, чтобы сделать выбранные атрибуты ложными в каждом объекте.

for(var i=0;i<list.length;i++)
{
   if(list[i].Selected==true)
    {
       list[i].Selected=false;
    }
}
...