2014-01-17 71 views

回答

19

試試這個:

$('select option:selected').attr('disabled','disabled'); 

編輯:

澄清的問題後,這是做正確的方式:

$('select').select2().enable(false); 
+0

我編輯我的職務,看圖片。此方法不起作用。我認爲select2有一個特定的功能,但我是一個新手。 – Chester

+0

我試過這個版本:$('select option:selected')。attr('disabled','true'); – Chester

+0

我有點困惑,你想禁用選擇元素或選擇的選項?如果是select元素,請嘗試:$('select')。select2()。enable(false); – robert00769

40

正確的方法是:

$('select').select2("enable",false) 

這工作正常。

+0

同意http://ivaynberg.github.io/select2/#disabled –

13

下面的編碼也工作正常

對於啓用選擇框:

$('#foo').select2('enable'); 

對於禁用選擇框:

$('#foo').select2('disable'); 

的jsfiddle:http://jsfiddle.net/DcunN/

4

要禁用完整選擇2框,即沒有刪除已選擇的值和沒有新的插入,使用方法:

$("id-select2").attr("disabled", true); 

其中id-select2是選擇2的唯一ID。你也可以使用任何特定的類來定義下拉菜單。

1
$('select').select2('enable',false); 

這適用於我。

+0

這已經在答案。由@ user4105545回答。 –

0

我禁用價值:

<option disabled="disabled">value</option> 
1

由於這個問題似乎是不清楚,對不起,如果這個答案是沒有直接關係的原意。

對於那些使用Select2版本4+和根據官方插件文檔,.select2("enable")是不是去禁用選擇框(不是一個單一的選項)的方式去了。它甚至會從版本4.1以後完全刪除。從文檔

引用directy(見https://select2.org/upgrading/migrating-from-35#select2-enable):

選擇二尊重底層選擇元件的禁用屬性。爲了啓用或禁用Select2,您應該在元素上調用.prop('disabled', true/false)。在Select2 4.1中將完全刪除對舊方法的支持。

所以在以前的答案的例子,它應該是: $('select').prop(disabled,true);

3

selec2 site你可以看到選項。 api有「禁用」選項。您可以使用諸如:

$('#foo').select2({ 
    disabled: true 
}); 
相關問題