Sprawdź, czy pole tekstowe jest wyłączone, czy nie za pomocą jQuery


93

Muszę sprawdzić, czy pole tekstowe jest wyłączone lub włączone za pomocą Jquery.

Odpowiedzi:


152

.prop('disabled') zwróci wartość logiczną:

var isDisabled = $('textbox').prop('disabled');

Oto skrzypce: http://jsfiddle.net/unhjM/


Z jakiegoś powodu nie działa to na mojej aplikacji, mimo że na skrzypcach działa idealnie. Kiedy go uruchamiam, firebug mówi, że .prop nie jest funkcją! Czy jest to coś związanego z wersją jquery? W każdym razie .is (': disabled') wydaje się działać dobrze. Dzięki. Dzięki.
Mohammed Joraid,

2
@MohammedJoraid - .prop()został wprowadzony w jQuery 1.6 (zobacz dokumentację). Jeśli używasz wcześniejszej wersji jQuery, użyj .attr()zamiast tego.
Joseph Silber,

@ChamanSaini wprowadzasz w błąd. Format $ ('input') ma na celu wybranie wejścia "kontroli typu", podczas gdy $ ('# input') dopasuje element o id "input" niezależnie od jego typu.
Tomerz

68

Możesz sprawdzić, czy pole tekstowe jest wyłączone za pomocą ismetody, przekazując :disableddo niego selektor. Spróbuj tego.

if($('textbox').is(':disabled')){
     //textbox is disabled
}


4

Możesz sprawdzić, czy element jest wyłączony, czy nie za pomocą tego:

if($("#slcCausaRechazo").prop('disabled') == false)
{
//your code to realice 
}

W przypadku porównania logicznego nie ma potrzeby testowania względem truelub false. Wystarczy użyć odpowiednio if (expr)lub if (! expr).
faintsignal

Masz rację, jeśli ($ ("# slcCausaRechazo"). Prop ('disabled')) {// Twój kod do rzeczywistości, jeśli jest wyłączony}

2
 if($("element_selector").attr('disabled') || $("element_selector").prop('disabled'))
 {

    // code when element is disabled

  }
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.