2012-06-14 19 views
5

Açılan liste belirli bir değerse, formumdaki onaylama düğmesini devre dışı bırakmak için jQuery'yi almaya çalışıyorum, ancak çalışmıyor gibi görünüyor.Bir HTML düğmesinin devre dışı bırakılması için JQuery çalışmıyor

Burada çok sayıda yazı okudum ve farklı yollar denedim.

<script> 
     $(document).ready(function() { 
     // Handler for .ready() called. 
     $('#MoveToCompanyId').attr("disabled", true); 

     $('#DeleteAll').live("click", function() { 

      if ($(this).attr("value") == "True") { 
       $('#MoveToCompanyId').attr("disabled", true); 
      } else { 
       $('#MoveToCompanyId').attr("disabled", false); 
       $('#confirm').attr("disabled", true); 
       $('#MoveToCompanyId').change(function() { 
        if ($("#MoveToCompanyId option:selected").text() != "---Select Company---") { 
        $('#confirm').removeAttr("disabled"); 
        alert($("#MoveToCompanyId option:selected").text()); 
       } 
       else { 
        $('#confirm').attr("disabled", true); 
        alert("I should be disabled!"); 
       } 

      }); 
     } 
     }); 
    }); 

    </script> 

kimse onunla herhangi bir sorun görüyor musun: İşte

anda benim kodudur?

Netleştirmek gerekirse, uyarılarım çalışırken doğru kod bloklarına girildiğini biliyorum. Çalışmıyor olan sadece düğme devre dışı bırakıyor.

Bir kontrolünü devre dışı bırakmak için
.attr('disabled', 'disabled') 

kullanarak olmalıdır

Tür Saygılarımızla,

Gareth

+0

".attr" yerine .prop yerine deneyin. –

+0

Ne yazık ki bu da işe yaramadı. Firebug'daki düğmeye bakıyorum ve hiç bir zaman engelliler özelliğini eklemiyor gibi görünmüyor. –

+0

Kodunuzu kandırabilir misiniz? –

cevap

10

Seni

prop('disabled',true) 
prop('disabled',false) 

jQuery kullanıyorsanız kullanıyor olmalıdır deneyin 1.6+ o zaman b gerektiğini e kullanarak prop.

Devamı yaklaşık prop

Özellikleri genellikle tefrika HTML niteliğini değiştirmeden bir DOM öğesinin dinamik durumunu etkiler. Örnekler arasında giriş öğelerinin değer özelliği, girişlerin ve düğmelerin devre dışı bırakılmış özelliği veya bir onay kutusunun işaretli özelliği bulunur. .attr() yöntemi yerine devre dışı bırakmak ve kontrol etmek için .prop() yöntemi kullanılmalıdır. Değer almak ve ayarlamak için .val() yöntemi kullanılmalıdır.

+0

üzerinde çalışmıyor, bu tavsiye için teşekkürler wirey, ne yazık ki bu da işe yaramıyor. –

+0

Aslında bu şimdi çalışıyor. Yardımınız için çok teşekkürler –

+0

Yardım için sevindim :) –

3

ve

.removeAttr('disabled') 

etkinleştirmek için.

http://www.w3schools.com/tags/att_input_disabled.asp

+0

Teşekkürler Dave, bu zaten boşuna denedim şeylerden biri! –

+0

ama attr ("disabled", true) benim için çalıştı! –

+0

@BehnamEsmaili, 'devre dışı' için isteğe bağlı bir değer belirterek bir denetimi devre dışı bırakır, ancak yeniden etkinleştirmenin tek yolu 'devre dışı bırakılmış' özniteliği tamamen kaldırmaktır. – Dave

0

attr('disabled', 'disabled') 

yerine

attr("disabled", true); 
+0

attr ("disabled", true) dışında değerleri önemli değil; – MJK

İlgili konular