радио-кнопка onclick добавляет число к общему количеству, но добавляет бесконечно - PullRequest
2 голосов
/ 17 июня 2019

У меня есть этот код jquery

var theTotal = jQuery('.woocommerce-Price-amount.amount').text();
var price = theTotal.replace("$", "");

jQuery('input[name="dimming"]').bind('click', function (e) {
    var haller = jQuery(this).val();

    if (haller == '1-10V dimmer') {
        price = Number(price) + 150;
    } else {
        price = Number(price) - 150;
    }

    jQuery('.woocommerce-Price-amount.amount').text(price); 

});

У меня есть этот переключатель, поэтому, когда я выбираю переключатель "layer2", он должен добавить 150 к исходному количеству

[] layer1 (+ $0)
[] layer2 (+ $150)

Результат

<span class="woocommerce-Price-amount amount">746</span>

, но когда я нажимаю на layer2 несколько раз, он всегда складывается, это всегда должна быть первоначальная цена + 150, независимо от того, сколько раз я нажимаю эту кнопку, любая помощь, пожалуйста

ЗДЕСЬЭТО МОЯ СТОРОНА https://jsfiddle.net/kxvc6t2L/

Ответы [ 2 ]

3 голосов
/ 17 июня 2019

Вы можете сохранить исходную цену в переменную, а затем просто добавьте слой1 к цене.Таким образом, вы всегда будете добавлять к нему исходную цену 150.Таким образом, вы не измените эту цену, и вы не получите больше.

var theTotal = jQuery('.woocommerce-Price-amount.amount').text();
var originalPrice = theTotal.replace("$", "");

jQuery('input[name="dimming"]').bind('click', function (e) {
    var haller = jQuery(this).val();

    if (haller == '1-10V dimmer') {
        price = Number(originalPrice) + 150;
    } else {
        price = Number(originalPrice);
    }

    jQuery('.woocommerce-Price-amount.amount').text(price); 

});

Вот ваш рабочий Fiddle: https://jsfiddle.net/bno4qsuk/

0 голосов
/ 17 июня 2019

Как насчет этого: https://jsfiddle.net/wwWaldi/k4wfyg3L/3/

var theTotal = jQuery('.woocommerce-Price-amount.amount').text();
var price = Number(theTotal.replace("$", ""));

jQuery('input[name="dimming"]').bind('click', function (e) {
    var haller = jQuery(this).val();

    if (haller == '1-10V dimmer') {
        price += 150;
    } else {
        price -= 150;
    }

    jQuery('.woocommerce-Price-amount.amount').text(price); 

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