Всего обновлений в реальном времени - PullRequest
1 голос
/ 02 мая 2020

Как вы можете видеть на изображении, каждый раз, когда я нажимаю + или - общая сумма должна обновляться.

Изображение 1

Изображение всего

Это мой html код поля на изображении:

<div class="qty mt-5">
    <span class="minus minus-triangolo"></span>
    <input type="text" class="count count-triangolo" name="quantita_cialda_triangolo" value="0" id="quantita_cialda_triangolo" autocomplete="off">
    <span class="plus plus-triangolo"></span>
    <label class="title-piu">Cialda a triangolo<span>“Confezione da 6 pezzi”</span></label>
</div>

Это мой jQuery:

function calcPrice() {
    var price = 0;
    var $panna  = $('#panna').is(':checked');
    var $radio1  = $('#radio1').is(':checked');
    var $radio2  = $('#radio2').is(':checked');
    var $radio3  = $('#radio3').is(':checked');
    var $radio4  = $('#radio4').is(':checked'); 
    var $cialda1 = $("input[name=quantita_cialda_triangolo]").val();
    var $valcialda1  = 3;    

    $("input[name=peso][data-price]:checked").each(function(i, el) {
        price += +$(el).data("price");
    });

    if( $panna && $radio1 ){
            price = 3 + price;
    }

    if( $panna && $radio2 ){
            price = 5 + price;
    }

    if( $panna && $radio3 ){
            price = 5 + price;
    }

    if( $panna && $radio4 ){
            price = 5 + price;
    }

    function multiply(a, b) {
        return a * b;
    }

    var $m1 = multiply($cialda1, $valcialda1);
    price = $m1 + price;

    $("#totale").text(price);
}

$("input[type=radio]").on("change", calcPrice);
$("input[type=checkbox]").on("change", calcPrice);

calcPrice();

Код для + / -

$('.count-triangolo').prop('disabled', true);
$(document).on('click','.plus-triangolo',function(){
    $('.count-triangolo').val(parseInt($('.count-triangolo').val()) + 1 );
});

$(document).on('click','.minus-triangolo',function(){
    $('.count-triangolo').val(parseInt($('.count-triangolo').val()) - 1 );
    if ($('.count-triangolo').val() == 0) {
        $('.count-triangolo').val(0);
    }
});

jQuery отлично работает с другими входами (радио, проверка), в основном, когда что-то происходит, итоговое значение обновляется, но я не могу обновить его в режиме реального времени, нажав на + или -.

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...