2010-02-12 61 views

回答

51

只需找到你所有的<select>内选定<option>标签和删除selected属性:

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

在jQuery 1.6,你应该使用.prop,而不是删除属性:

$("#my_select option:selected").prop("selected", false); 
+0

多选择下拉,这将不会清除显示的文本。 – Sahi

3

最短并最快的方式来删除所有的选择,通过在jQuery .val()函数中传递空字符串:

$("#my_select").val('') 
+2

只是一个警告,如果你有一个选项value =“”,这种方法将选择它,所以接受的答案是你的方式https://jsfiddle.net/yemgudc8/ – fsw

+0

不工作... – cwhisperer

19

为了清除所有选择,我正在使用这样的工作,对我来说工作得很好。 这里是脚本:

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

$("#ddlMultiselect").multiSelect('refresh'); 
+0

这个答案是与问题无关。 –

+0

这是什么库? Multiselect不是jQuery或jQueryUI的一部分。 – Nielsvh

+0

这是用于引导多选的可能 –

2

这是清除多选或列表框的最佳方式:

$("#drp_assign_list option[value]").remove(); 
1

jQuery中:

$("#id option:selected").prop("selected", false); 
    $("#id").multiselect('refresh'); 
0

在JavaScript中,

您可以使用多选下拉列表中的所有选项列表,它将通过Array.Then循环到达ma在每个对象中将选定的属性设置为false。

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

假设你正在使用引导多选下拉大卫STUTZ $( '#SELECTID')多选( 'deselectAll',虚假)。 但由于某种原因,它不适用于初始化方法