Я знаю, что этот вопрос был задан, но каждый сценарий варьируется настолько, чтобы запутать меня.
Когда пользователь меняет выбор, тогда: #cost + #donation = # total
Когдатогда пользователь вводит #donation: #cost + #donation = # total
У меня это работает, но общая сумма объединяется в "30,00 $ 20,00" вместо добавления 2 к "50,00 $"
Я считаю, что parseFloat () имеет к этому непосредственное отношение.
Спасибо!
<select class="custom-select d-block w-100" id="type" name="type" required>
<input type="text" class="form-control" id="cost" name="cost" disabled>
<input type="text" class="form-control" id="donation" name="donation">
<input type="text" class="form-control" id="total" name="total" disabled>
Это то, что я собрал воедино:
$("#type").change(function(){
// this changes the input id=cost to match the select field id=type
var typevalue = $( "#type" ).val();
$('input[name=cost]').val(typevalue);
});
$('#donation').keyup(function() {
$(this).val(function(i,v) {
return '$' + v.replace('$',''); //remove exisiting, add back.
});
});
$(document).ready(function(){
$('#type').change(calculate);
$('#donation').keyup(calculate);
});
function calculate(e)
{
$('#total').val($('#cost').val() + $('#donation').val());
}