如何使用jQuery清除SELECT输入中的所有选定项?

时间:2011-01-20 14:28:46

标签: javascript jquery html

我认为这应该相当容易,但有点挣扎......我有一个SELECT输入元素,允许用户选择多个项目。我想提供一种机制让他们清除所有选定的项目,可能只是一个SPAN标签或类似的东西。

无论如何......使用jQuery,我如何清除SELECT输入元素上的选择,以便不选择任何项目。

10 个答案:

答案 0 :(得分:75)

如果<select multiple> .val()函数接受/返回一个数组,那么你可以简单地传入一个空数组来清除选择,如下所示:

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

You can test it out here

答案 1 :(得分:5)

这有助于我清除所有选择的选项..

$(“#selectListName”)。prop('selectedIndex', - 1)

选择列表看起来像

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

答案 2 :(得分:4)

尝试:

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

答案 3 :(得分:3)

只有这对我有用: -

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

答案 4 :(得分:2)

我尝试像

这样的东西
$("#my-Select").find('option').attr("selected","") ;

答案 5 :(得分:0)

试试这个

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

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

答案 6 :(得分:0)

Maybe 

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

答案 7 :(得分:0)

比这更好,你可以使用:

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

几乎可以用于DOM中的任何内容。

答案 8 :(得分:0)

此解决方案对我有用...

$('#my-Select').val('').trigger('change');

这几乎适用于所有输入类型。

答案 9 :(得分:-1)

尝试:

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

为我工作!