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

218
Views
Cómo cambiar automáticamente el valor de un campo de entrada cambiando otro valor de campo usando JS

Hay dos campos de entrada total_amount y delivery_charge .

El campo total_amount ya tiene un valor, ahora quiero que cuando ingrese algún valor en el campo delivery_charge , cambie el valor del campo total_amount .

Supongamos que el valor del campo total_amount es 200 .

Ahora ingreso 20 en el campo delivery_charge y eso afectará el campo total_amount y el valor será 220 .

Para cualquier tipo de cambio del campo delivery_charge cambiará el valor del campo total_amount .

Pero para mí no cambiará perfectamente.

Supongamos que total_amount es 200

cuando la entrada delivery_charge = 2

total_amount = 202

cuando la entrada delivery_charge = 20

total_amount = 2020

Aquí está el detalle de mi código

html

 <h4>Grand Total : <input type="number" id="total_amount" readonly class="form-control total_amount" value="0.00"></h4> <input type="text" name="delivery_charge" id="delivery_charge" class="form-control">

js

 $('#delivery_charge').keyup(function(event) { var total_amount = $('.total_amount').val(); var delivery_charge = $(this).val(); var grand_total_amount = total_amount + delivery_charge; $('.total_amount').val(grand_total_amount); });

¿Alguien ayuda por favor? Gracias por adelantado.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Podrías probar esta solución.

  1. Almacene el total_amount para que pueda tener el valor original cuando lo actualicemos en los cambios de entrega.
  2. Use parseInt() para asegurarse de que el valor que obtuvo no sea una cadena.

 const total_amount = parseInt($('.total_amount').val()); $('#delivery_charge').keyup(function() { $('.total_amount').val(total_amount + parseInt($(this).val() || 0)); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <h4>Grand Total : <input type="number" id="total_amount" readonly class="form-control total_amount" value="200"></h4> <input type="number" name="delivery_charge" id="delivery_charge" class="form-control">

about 4 years ago · Juan Pablo Isaza Report

0

Para asegurarse de que está tratando con números, use parseInt() (o parseLong() si está tratando con números grandes) de la siguiente manera

 $('#delivery_charge').keyup(function(event) { var total_amount = parseInt($('.total_amount').val()); var delivery_charge = parseInt($(this).val()); var grand_total_amount = total_amount + delivery_charge; $('.total_amount').val(grand_total_amount); });
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!