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

226
Views
¿Cómo me aseguro en JavaScript de que cuando hago clic en cualquier casilla de verificación, el campo de entrada va a 0?

¿Cómo me aseguro de que cuando hago clic en cualquier casilla de verificación, el campo de entrada va a 0. Porque ahora funciona con el primero, pero no con los demás?

Este es el código que tengo ahora:

 let checkbox = document.getElementById("abs"); let inp = document.getElementById("cijfer"); checkbox.addEventListener('change', function() { if (this.checked) { inp.value = 0; } });

El primer campo de entrada va a 0, pero el segundo no.

Imagen del problema:

https://i.stack.imgur.com/SGIE6.png

Casilla de verificación y código de entrada en gohtml:

 <td><input id="cijfer" type="number" name="grade-{{$s.ID}}" step="0.1" min = "0" max = "10" value="{{(index $.Grades $s.ID).Value}}"></td> <td> <input id="abs" type="checkbox" name="abs-{{$s.ID}}"> <label for="abs">ABS</label> </td>
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

está utilizando id ( getElementById ) y es un atributo único.

¡use la clase "abs" y la clase "cijfer" en su lugar!

¡luego encuentre la entrada más cercana y haga que el valor sea cero!

 <script> function closest(el, classname) { if(el.parentNode){ if(el.parentNode.className.includes(classname)){ return el.parentNode; } else{ return closest(el.parentNode, classname); } } else{ return false; } } document.querySelectorAll('.abs').forEach(function(item) { item.addEventListener('change', function() { if (this.checked) { let closest = closest(this, 'cijfer'); closest.value = "0"; } } }); </script>

esto fue js puro! puede usar jquery en su lugar:

 $('.abs').on('change', function(){ $(this).prev('input').val('0'); });
about 4 years ago · Juan Pablo Isaza 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!