Encuentre si un cuadro de texto está deshabilitado o no usa jquery

93

Necesito encontrar si un cuadro de texto está deshabilitado o habilitado usando Jquery.

Vaibhav Jain
fuente

Respuestas:

152

.prop('disabled') devolverá un booleano:

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

Aquí está el violín: http://jsfiddle.net/unhjM/

Joseph Silber
fuente
Por alguna razón, esto no funciona en mi aplicación, aunque en el violín funciona perfectamente. Cuando lo ejecuto, firebug dice .prop no es una función. ¿Es algo relacionado con la versión de jquery? De todos modos, .is (': disabled') parece funcionar bien. Gracias. Gracias.
Mohammed Joraid
2
@MohammedJoraid: .prop()se introdujo en jQuery 1.6 (consulte los documentos). Si está usando una versión anterior de jQuery, use .attr()en su lugar.
Joseph Silber
@ChamanSaini estás engañando. El formato $ ('input') está destinado a seleccionar una entrada de "control de tipo", mientras que $ ('# input') coincidirá con un elemento con el id "input" independientemente de su tipo.
Tomerz
68

Puede encontrar si el cuadro de texto está deshabilitado usando el ismétodo pasándole el :disabledselector. Prueba esto.

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

Puede verificar si un elemento está deshabilitado o no con esto:

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

fuente
Con la comparación booleana no es necesario realizar una prueba con trueo false. Simplemente use if (expr)o if (! expr), respectivamente.
desmayo
Tienes razón if ($ ("# slcCausaRechazo"). Prop ('disabled')) {// tu código para saber si está desactivado}
2
 if($("element_selector").attr('disabled') || $("element_selector").prop('disabled'))
 {

    // code when element is disabled

  }
Rajat Bansal
fuente