2010-08-05 12 views
8

Bir HTML açılır listesinden (Jquery'yi kullanma), seçenek etiketindeki bir veya daha fazla öğe nasıl silinir.Bir açılır listeden seçili öğeyi kaldırma (Jquery'yi kullanma)

Tüm seçenekleri bir açılan kutudan kaldırmak için aşağıdaki Jquery deyimini kullanabiliriz.

$ ("# cmbTaxIds> option").

Aşağıdaki HTML kodunu aspx dosyasında kabul ediyorum.

  <select id="cmbTaxID" name="cmbTaxID" style="width: 136px; display: none" tabindex="10" disabled="disabled"> 
       <option value="0"></option> 
       <option value="3"></option> 
       <option value="1"></option> 
      </select> 

Ben sadece orta değerini kaldırmak istiyorsanız, o zaman ne aynı (kullanarak jQuery) sözdizimi olmalıdır?

cevap

16

eq seçiciyi kullanın.

var index = $('#cmbTaxID').get(0).selectedIndex; 
$('#cmbTaxID option:eq(' + index + ')').remove(); 

Bu endeks bazlı olduğu için bunu yapmak için en iyi yoldur, keyfi değil değer bazlı.

+0

Sorunumu çözmemde yardımcı oldu. Çok teşekkürler :-) – Biki

1
$("#cmbTaxIds >option[value='3']").remove(); 

Kaldırmak istediğiniz öğenin değeriyle birlikte 3'u değiştirin.

$('#cmbTaxID option:selected').remove(); 

hatta daha kısa:

$('#cmbTaxID :selected').remove(); 
1

bir seçilen seçeneği kaldırmak için daha genel bir cevap

$('#somebutton').click(function(){ 
    var optionval = $('#cmbTaxIds').val(); 
    $('#cmbTaxIds > option[value=' + optionval + ']').remove(); 

}) 
4

böyle bir şey olabilir:

$("#cmbTaxID :selected").remove(); 
+0

Bu bana en şık gözüküyor. Seçici tüm seçili seçenekleri bulacaktır. Diğer çözümler bir endeks geçirmeyi içerir. –

13

seçilen öğeyi kaldırmak için

+1

Ben 'option' kullanmadım ve benim için çalıştı. Kullanıyorsam bir şeyi özlüyorum - '$ (" # cmbTaxID: selected "). Remove();'? – boddhisattva

+0

Çalışacak.