Отмена выбора всех элементов из раскрывающегося списка multi-select в jQuery

У меня есть выпадающий список с несколькими вариантами выбора, где я выбрал параметры "Тест 2" и "тест 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>

У меня есть кнопка под названием "отменить выбор всех". Когда эта кнопка нажата,все выбранные элементы должны быть невыбранным. В этом случае элементы, которые я ранее выбрал, "Тест 2" и "тест 3", теперь должны быть отменены.

Как я могу это сделать с помощью jQuery?

9 ответов


$("#edit-rec option:selected").removeAttr("selected");

попробуй

$("#edit-rec > option").attr("selected",false);

демо -http://jsfiddle.net/LhSBu/


при нажатии на переключатель вы можете использовать это

$("#edit-rec  option").each(function(){

    this.selected=false;

});

он удалит все проверенные параметры из multiselect dropdownlist:

$('#ddlTradeShow').multiselect ("clearSelection");


$("#edit-rec option:selected").removeAttr("selected");

$("#butt").click(function () {
    $("#edit-rec > option").removeProp("selected");
});

это правильно с новой версией jQuery


может сделать что-то вроде этого JS Fiddle для настройки щелчка по переключателю http://jsfiddle.net/x5ck3/

$('#rdClear').click(

function() {
    $("#edit-rec option:selected").removeAttr("selected");
});

самый простой способ, который я нашел, чтобы отменить выбор всех параметров в раскрывающемся списке с несколькими вариантами, - это использовать .val([]).

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

теперь есть еще одна возможность, непосредственно предоставляемая API:

$('#edit-rec').multiSelect('deselect_all');

отлично работает, здесь вы можете найти больше вариантов об этом:http://loudev.com/