Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

227
Views
Alternar atributo de entrada deshabilitado usando jQuery

Aquí está mi código:

 $("#product1 :checkbox").click(function(){ $(this) .closest('tr') // Find the parent row. .find(":input[type='text']") // Find text elements in that row. .attr('disabled',false).toggleClass('disabled') // Enable them. .end() // Go back to the row. .siblings() // Get its siblings .find(":input[type='text']") // Find text elements in those rows. .attr('disabled',true).removeClass('disabled'); // Disable them. });

¿Cómo .attr('disabled',false); ?

Parece que no puedo encontrarlo en Google.

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

$('#el').prop('disabled', function(i, v) { return !v; });

El método .prop() acepta dos argumentos:

  • Nombre de propiedad (deshabilitado, verificado, seleccionado) cualquier cosa que sea verdadera o falsa
  • Valor de la propiedad, puede ser:
    • ( vacío ) - devuelve el valor actual.
    • booleano (verdadero/falso): establece el valor de la propiedad.
    • función : se ejecuta para cada elemento encontrado, el valor devuelto se usa para establecer la propiedad. Hay dos argumentos pasados; el primer argumento es el índice (0, 1, 2, aumenta por cada elemento encontrado). El segundo argumento es el valor actual del elemento (verdadero/falso).

Entonces, en este caso, utilicé una función que me proporcionó el índice (i) y el valor actual (v), luego devolví el valor opuesto al actual, por lo que el estado de la propiedad se invierte.

over 4 years ago · Santiago Trujillo Report

0

¡ Supongo que para disabled la comparabilidad completa del navegador debe establecerse por el valor disabled o eliminarse!
Aquí hay un pequeño complemento que acabo de hacer:

 (function($) { $.fn.toggleDisabled = function() { return this.each(function() { var $this = $(this); if ($this.attr('disabled')) $this.removeAttr('disabled'); else $this.attr('disabled', 'disabled'); }); }; })(jQuery);

Enlace de ejemplo .

EDITAR: ¡se actualizó el enlace/código de ejemplo para mantener la encadenabilidad!
EDITAR 2:
Basado en el comentario de @lonesomeday, aquí hay una versión mejorada:

 (function($) { $.fn.toggleDisabled = function(){ return this.each(function(){ this.disabled = !this.disabled; }); }; })(jQuery);
over 4 years ago · Santiago Trujillo Report

0


    $('#casilla').click(función(){
        $('#submit').attr('disabled', !$(this).attr('checked'));
    });

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!