Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

201
Visualizações
¿Por qué no se activa mi evento de cambio de casilla de verificación?

tengo dos funciones

La primera función traduce un clic div en una alternancia marcada/no marcada. La segunda función traduce un cambio de casilla de verificación en un evento ocultar/mostrar.

El problema es que cuando uso la primera función para marcar/desmarcar la casilla, no se llama a la segunda función. Soy nuevo en javascript, gracias.

 <script type="text/javascript"> $(document).ready(function() { $(":checkbox").parent().click(function(evt) { if (evt.target.type !== 'checkbox') { var $checkbox = $(":checkbox", this); $checkbox.attr('checked', !$checkbox.attr('checked')); evt.stopPropagation(); return false; } }); }); </script> <script type="text/javascript"> $(document).ready(function() { $(":checkbox").change(function() { if($(this).attr("checked")) { $('.'+this.id).show(); } else { $('.'+this.id).hide(); } }); }); </script>
over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

El evento de cambio no se activa cuando cambia mediante programación el valor de una casilla de verificación. Lo que puede hacer para asegurarse de que se dispare es:

 $(":checkbox").parent().click(function(evt) { if (evt.target.type !== 'checkbox') { var $checkbox = $(":checkbox", this); $checkbox.attr('checked', !$checkbox.attr('checked')); $checkbox.change(); } });
over 4 years ago · Santiago Trujillo Relatório

0

No te molestes con el primer fragmento. Solo usa elementos LABEL:

 <label><input type="checkbox">Some option</label>

Ahora, cuando el usuario haga clic en la etiqueta (el texto junto a la casilla de verificación), la casilla de verificación se activará.


El segundo fragmento se puede optimizar:

 $('input:checkbox').change(function() { $('#' + this.id).toggle(this.checked); });
over 4 years ago · Santiago Trujillo Relatório

0

estás usando '.' que es para selectores de clase en su lugar, use '#' ya que está usando la ID del elemento. Me gusta esto:

 $(document).ready(function() { $(":checkbox").bind('change', function() { if($(this).attr("checked")) { $('#'+this.id).show(); } else { $('#'+this.id).hide(); } }); });
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda