2009-08-05 78 views
9

後只是想知道它是如何可能不選選擇選項框,我用一個.remove(),但是這實際上將刪除選擇框中的文本,如何取消選擇選擇選項框的一些計算完成

有沒有其他的方法。

感謝

+0

是否要設置默認文本作爲一個選擇? – rahul 2009-08-05 09:32:43

+0

我有一些選擇框,我得到它們的值和文本,並將它們添加到數組之後,我需要將它們設置爲它們的原始狀態。 – amir 2009-08-05 09:35:53

回答

17

$('#mySelectBox :selected').attr('selected', '');

哪裏#mySelectBox是你的選擇元素的ID。

+0

謝謝,工作得很好。 – amir 2009-08-05 09:37:11

7

這些情況對於帶有單個選項的選擇框以及具有多個選項的選擇框有所不同。

對於選擇框單選項:

<select id='selectbox'> 

jQuery代碼:

$('#button').click(function() { 
     $('#selectbox').attr('selectedIndex', '-1'); 
}); 

注意:你需要這個變種,使其在Internet Explorer中運行。下面的示例也適用於Internet Explorer中的單個選項文本框。

對於選擇框有多種選擇:

<select id='selectbox' multiple='multiple'> 

jQuery代碼:

$('#button').click(function() { 
     $('#selectbox option').attr('selected', ''); 

}); 
1

一個非常延遲的響應,但我發現這個工程的一個選擇多好,所以希望能幫助別人其他人也在Google上發現這一點。

$('#button').click(function() { 
     $('#selectbox option').removeAttr('selected'); 

}); 
0

很晚的答案,但我找不到任何工作與非多重選擇框,所以我自己寫這個。

var chg = 0; // global to unselect 
$("#myoptions").on({ 
    mousedown : function(){ 
    chg = 0; 
}, 
change : function() { 
    chg = 1; 
}, 
click: function() { 
    if (chg !== 1) { 
    $("#myoptions")[0].selectedIndex = -1; 
    } 
} 
}); 

我在Chrome和IE8中測試了這個。

它可以讓你選擇,然後取消選擇,就像你可以用多個選擇框。你不必使用CTRL鍵,但如果你這樣做仍然有效。

這裏是一個的jsfiddle:http://jsfiddle.net/rkekvows/

相關問題