deshabilitar el botón de habilitar usando jquery

Tengo una versión de javascript en funcionamiento para deshabilitar / habilitar un botón desde, pero no puedo hacer que funcione con jQuery.

Mi jsfiddle tiene ambas versiones. La versión de javascript está comentada.

//NOT WORKING jQuery function controls(id) { if (id === "button_start") { //$('button_start').prop('disabled','disabled'); // $('button_stop').removeProp('disabled','disabled'); // testing $('#button_start').on('click',function() { $(this).prop('disabled', 'disabled'); }); $('#button_stop').on('click', function(){ $(this).removeProp('disabled', 'disabled'); }); //console.log(id); } else { //$('button_stop').prop('disabled','disabled'); //$('button_start').removeProp('disabled','disabled'); // testing $('#button_stop').click(function() { $(this).prop('disabled', 'disabled'); }); $('#button_start').click(function(){ $(this).removeProp('disabled', 'disabled'); }); //console.log(id); } } 

jsFiddle: https://jsfiddle.net/tommy6s/w2u8eskv/

¡Gracias por tu ayuda!

Esto podría no resolver su problema, sin embargo, está utilizando removeProp método removeProp . De acuerdo con la documentación de jQuery, removeProp toma solo un atributo

 .removeProp( propertyName ) propertyName Type: String The name of the property to remove. 

En tu ejemplo, cambiaría tus líneas que se ven así

 $('#button_start').click(function(){ $(this).removeProp('disabled', 'disabled'); }); 

a esto

 $('#button_start').click(function(){ $(this).removeProp('disabled'); }); 

https://api.jquery.com/removeProp/

Además, recuerde que los elementos de identificación deben comenzar con el signo # . Tenías eso en tu OP pero no en el violín.

Sus selectores están equivocados.

 $('button_start') 

debiera ser

 $('#button_start') ^--------------- Missing id selector syntax 

Luego debe incluir la biblioteca jQuery para que el violín comience a trabajar.

Añade el estilo:

 #button_start:disabled{background:blue;opacity:0.3;} 

y su guión:

 function controls(id) { if (id === "button_start") { $('#button_start').attr('disabled','disabled'); $('#button_stop').removeProp('disabled'); } else { $('#button_stop').attr('disabled','disabled'); $('#button_start').removeProp('disabled'); } } 

Para las versiones de jQuery posteriores a 1.6:

 $('#button_start').prop('disabled', false); //to enable and pass true to disable 

Para otras opciones y versiones, vea esta respuesta SO Deshabilitando y habilitando un botón de entrada HTML