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

140
Visualizações
Tiene problemas para verificar cuando la casilla de verificación está marcada

Estoy tratando de implementar un botón Me gusta en mi sitio para algunas páginas diferentes y estoy usando socket io para que se actualice para cada usuario cuando se presiona el botón Me gusta. Tengo una función simple de me like() que emite Me liked , lo que luego hace que un contador suba y se muestre en la página. Aunque ese no es el problema. Decidí hacer una casilla de verificación para poder hacer algo cuando la casilla de verificación no es deseada. Tengo una función para eso también que funciona. Simplemente no puedo hacer algo cuando no está marcado. Esto es lo que estoy usando para ver si la casilla de verificación está marcada:

 if(document.getElementById('like').checked) { like() }

Sin embargo, esto no hace nada cuando se comprueba. Incluso traté de reemplazar like() con socket.emit('liked') pero tampoco funcionó. ¿Cuál es la forma correcta de verificar si la casilla de verificación está marcada o no? (Preferiblemente sin Jquery)

archivo html:

 <!DOCTYPE html> <html> <head> <title>Test</title> <meta charset="utf-8"> <link rel="stylesheet" href="styles.css"> </head> <body> <p id="likes">Likes: </p> <input type="checkbox" id="like"></input> <script src="/socket.io/socket.io.js"></script> <script> var socket = io.connect(); if(document.getElementById('like').checked) { like() } function like(){ socket.emit('liked'); } function un_like(){ socket.emit('unliked'); } socket.on('buttonUpdate', function(data){ document.getElementById("likes").innerHTML = 'Likes: ' + data; }); </script> </body> </html>
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

agregue addEventListener a la casilla de verificación

 var checkbox = document.querySelector("input[id=like]"); checkbox.addEventListener('change', function() { if (this.checked) { console.log("Checkbox is checked.."); } else { console.log("Checkbox is not checked.."); } });
 <input type="checkbox" id="like">Checkbox</input>

about 4 years ago · Juan Pablo Isaza Relatório

0

Use onChange para manejar esto. Lectura adicional

 <input type="checkbox" id="like" onChange="clickHandler(this)"></input>
 function clickHandler(checkbox) { if(checkbox.checked) { like() } }

Código de muestra:

 function clickHandler(checkbox) { if(checkbox.checked) { console.log('selected') } else { console.log('unselected') } }
 select / unselect: <input type="checkbox" id="like" onChange="clickHandler(this)"></input>

about 4 years ago · Juan Pablo Isaza 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