У меня есть функция, которую я хочу запустить, только если ранее была активирована другая функция.
У меня есть несколько флажков, и мне нужно суммировать их значения, чтобы получить сумму.
Только Когда пользователь выбрал некоторые флажки, он должен активировать другой флажок со скидкой.
Я хочу, чтобы флажок скидки был активирован после первого выбора, потому что, если я этого не сделаю, у меня может быть отрицательная цена.
Затем (если это возможно) я хочу, чтобы флажок скидки был деактивирован, если пользователь отменил выбор всех предыдущих флажков.
Возможно ли это?
Вот мой сценарий. Я супер новый в JavaScript / jQuery, так что это может быть глупым вопросом.
Спасибо
$(document).on('change', getCheck);
function getCheck() {
var total= 0;
$('[type="checkbox"]:checked').not("#discount").each(function(i, el) {
//console.log($(this).not("#off").val());
var SumVehicle = parseFloat($(el).val());
total += SumVehicle;
//console.log(total);
//console.log(price_tot);
$('#rata').text(total +" €");
var finalprice = total;
//var Check = getCheck();
if(typeof(total) != "undefined" && total !== 0) {
$('[type="checkbox"]:checked').not(".sum").each(function(i, el) {
var Discount = parseFloat($(this).val());
finalprice = finalprice - Discount;
console.log(finalprice);
$('#rata').text(finalprice +" €");
});
};
});
};
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input class="sum" type="checkbox" name="vehicle1" value="1000"> I have a bike<br>
<input class="sum" type="checkbox" name="vehicle2" value="2000"> I have a car<br>
<br><br><br>
<input id="discount" type="checkbox" name="discount" value="200"> Discount<br>
<div id="rata">rata</div>