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.

Respuestas:


152

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

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

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


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
}


4

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

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

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

  }
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.