чекбоксы, если отмечен, нужно суммировать свою цену в div - PullRequest
0 голосов
/ 09 ноября 2018

У меня есть страница (здесь ее видно) в котором, если я нажимаю на флажок, мне нужно сложить его цену с фактической ценой.

Флажки имеют value и data-prezzo. эти два числа должны суммироваться с двумя разными делениями:

value + rata-display-1 = total_rata

data-prezzo + prezzo-somma = total_prezzo

Я новичок, поэтому я не знаю, почему он дал мне NaN вместо правильной суммы.

вот код:

//sommo rata e prezzo dei plus a quelli del DB
var basicPrice_rata = 1000 ; // This is how we start
var basicPrice_prezzo = 50000 ; // This is how we start
    
$(document).on('change', getCheck);
    function getCheck() {
    var currentPrice_rata = basicPrice_rata; // every time
    CurrentPrice_rata = basicPrice_rata;
    var currentPrice_prezzo = basicPrice_prezzo; // every time
    CurrentPrice_prezzo = basicPrice_prezzo;
        plus = [],
        total_rata = 1000;
        total_prezzo = 50000; 

    $("input[type=checkbox]").each(function(i, el) {

        if ($(el).is(":checked")) {
            total_rata += parseInt($(el).val());
            total_prezzo += parseInt($(el).data('prezzo'));

            console.log(total_rata);
            plus.push($(el).data('name')); // get the label text
            }
    });


//inserisco i nomi dei plus nella riga di testo
 $("#plus-display").text(plus.join(", "));
    
//inserisco le rate sommate  nei div corrispondenti
 $('#rata-display-2').text(total_rata +" €");
    
//inserisco i prezzi sommati  nei div corrispondenti
 $('#prezzo-somma').text(total_prezzo +" €");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" value="134.24" data-prezzo="40000" id="box-auto" name="Box auto" data-name="Box auto" class="check-plus w-checkbox-input">
<input type="checkbox" value="17.78" data-prezzo="5000" id="posto-moto" name="Posto moto" data-name="Posto moto" class="check-plus w-checkbox-input">
<input type="checkbox" value="134.24" data-prezzo="40000" id="box-auto" name="Box auto" data-name="Box auto" class="check-plus w-checkbox-input">

<div id="rata-display-2" class="prezzo-checkout">1000 €</div>

<div id="prezzo-somma" class="text-checkout color bold">500000 €</div>

<div id="plus-display" class="text_piccolo black checkout">Interior Pack Incluso nel prezzo</div>

1 Ответ

0 голосов
/ 09 ноября 2018

Кажется, ваш код работает должным образом, в котором отсутствует только закрытие функции

//sommo rata e prezzo dei plus a quelli del DB
var basicPrice_rata = 1000 ; // This is how we start
var basicPrice_prezzo = 50000 ; // This is how we start
    
$(document).on('change', getCheck);
    function getCheck() {
    var currentPrice_rata = basicPrice_rata; // every time
    CurrentPrice_rata = basicPrice_rata;
    var currentPrice_prezzo = basicPrice_prezzo; // every time
    CurrentPrice_prezzo = basicPrice_prezzo;
        plus = [],
        total_rata = 1000;
        total_prezzo = 50000; 

    $("input[type=checkbox]").each(function(i, el) {

        if ($(el).is(":checked")) {
            total_rata += parseInt($(el).val());
            total_prezzo += parseInt($(el).data('prezzo'));

            //console.log(total_rata);
            plus.push($(el).data('name')); // get the label text
            }
    });


//inserisco i nomi dei plus nella riga di testo
 $("#plus-display").text(plus.join(", "));
    
//inserisco le rate sommate  nei div corrispondenti
 $('#rata-display-2').text(total_rata +" €");
    
//inserisco i prezzi sommati  nei div corrispondenti
 $('#prezzo-somma').text(total_prezzo +" €");
 }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" value="134.24" data-prezzo="40000" id="box-auto" name="Box auto" data-name="Box auto" class="check-plus w-checkbox-input">
<input type="checkbox" value="17.78" data-prezzo="5000" id="posto-moto" name="Posto moto" data-name="Posto moto" class="check-plus w-checkbox-input">
<input type="checkbox" value="134.24" data-prezzo="40000" id="box-auto" name="Box auto" data-name="Box auto" class="check-plus w-checkbox-input">

<div id="rata-display-2" class="prezzo-checkout">1000 €</div>

<div id="prezzo-somma" class="text-checkout color bold">500000 €</div>

<div id="plus-display" class="text_piccolo black checkout">Interior Pack Incluso nel prezzo</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...