使用功能单击按钮时更改全局变量

时间:2019-05-06 10:58:23

标签: javascript html

每次单击按钮时尝试更新cartSummary。 (该按钮正常工作,但在函数外部调用时cartSummary不会更新) 有多个按钮,这就是为什么我需要能够更新cartSummary的原因。

var price = 0;
var totalPrice = 0;

var cartSummary = "";

function addProduct1() {
    price = product1.price;
    cartSummary = cartSummary + product1.name + " €" + product1.price + "\n";
    document.getElementById("demo").innerHTML = cartSummary;
}

function addProduct1() {
    price = product1.price;
    cartSummary = cartSummary + product1.name + " €" + product1.price + "\n";
    document.getElementById("demo").innerHTML = cartSummary;
}

document.getElementById("demo").innerHTML = cartSummary;

有多个按钮,这就是为什么我需要能够更新cartSummary的原因。

2 个答案:

答案 0 :(得分:0)

您已经两次定义了addProduct1函数。我假设您要为每个函数使用不同的名称。

除此之外,每次调用cartSummary函数时,都要重写addProduct1的值。

替换语句

cartSummary = cartSummary + product1.name + " €" + product1.price + "\n";

cartSummary += product1.name + " €" + product1.price + "\n";

请注意cartSummary +=部分,它附加了字符串而不是重写。

答案 1 :(得分:0)

在按钮之外,如果要使dom操作起作用,则需要等待DOM准备就绪。您尝试采用以下方法使其正常工作。

document.addEventListener("DOMContentLoaded", function(event) {
    // Your code to run since DOM is loaded and ready
    document.getElementById("demo").innerHTML = cartSummary; 
});

or
$(document).ready(function() {
    document.getElementById("demo").innerHTML = cartSummary; 
});