基础金额是已知的,有两个空字段:“新价格”和“百分比”。我设法编写了逻辑,如果您在“百分比”字段中输入百分比数字,则计算出正确的金额,并将其插入“新价格”字段中。
但是,如果我们在“新价格”字段中输入一个数字, “百分比”字段会计算错误的基础金额百分比。
$(document).ready(function() {
let priceBase = parseInt($('.price-base').text().replace(/[^0-9]/gi, '')); // получаем базовую цену
let priceDiscount = '.price-discount'; // поле с ценой со скидкой
let percent = '.percent'; // поле процентов
$(percent).on('keyup change', function() {
let thisPercent = $(this).val();
let resultPrice = priceBase / 100 * thisPercent; //вычисление процентов
$(priceDiscount).val(priceBase - resultPrice);
});
//Пытаюсь вычислить процент от двух сумм
$(priceDiscount).on('keyup change', function() {
let thisPrice = $(this).val();
let resultPrice = thisPrice / priceBase;
$(percent).val(resultPrice);
});
});
.container {
display: flex;
}
.container div {
padding: 30px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
<div class="price-base">100 ₽</div>
<div>
<input type="text" class="price-discount" placeholder="новая цена"> ₽
</div>
<div>
<input type="text" class="percent" placeholder="процент"> %
</div>
</div>
1 个回答