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.
Podrías probar esta solución.
total_amount para que pueda tener el valor original cuando lo actualicemos en los cambios de entrega.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">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); });