Ответ 1
$("#edit-rec option:selected").removeAttr("selected");
У меня есть выпадающее меню с несколькими выборами, как показано ниже, где я выбрал опции "Тест 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?
$("#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:
$( '# 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");
});
Теперь появилась дополнительная возможность, предоставляемая API:
$('#edit-rec').multiSelect('deselect_all');
Хорошо работает, здесь вы можете найти больше опций: http://loudev.com/
Самый простой способ, который я обнаружил, чтобы отменить выбор всех параметров в раскрывающемся списке с несколькими выборами, заключался в использовании .val([])
.
$("#select").val([]);