Javascript 更新变量的值

Javascript 更新变量的值,javascript,html,jquery,arrays,Javascript,Html,Jquery,Arrays,单击“添加到购物车”时,该值将添加到“.total Cart”,在中选择一个选项后,该选项值将添加到购物车的总值并显示在“.total all”中。但当您再次单击“添加到购物车”时,“.total all”的值不会改变。只有在中选择了另一个选项时,才会更新该选项。是否有办法自动更新“.total all”的值 ● //收费选择 $(文档).ready(函数(){ var sheetURL= "https://spreadsheets.google.com/feeds/list/1lyCo_

单击“添加到购物车”时,该值将添加到“.total Cart”,在中选择一个选项后,该选项值将添加到购物车的总值并显示在“.total all”中。但当您再次单击“添加到购物车”时,“.total all”的值不会改变。只有在中选择了另一个选项时,才会更新该选项。是否有办法自动更新“.total all”的值


//收费选择
$(文档).ready(函数(){
var sheetURL=
"https://spreadsheets.google.com/feeds/list/1lyCo_s17CxGzI2n83_H2IKTTE-ot9Pam1ZyC8t6qZmE/2/public/values?alt=json";
$.getJSON(sheetURL,函数(数据){
var entryData=data.feed.entry;
控制台日志(数据);
each(entryData,function()){
$(“#selectID”).append(
'选择'+this.gsx$name.$t+'$'+this.gsx$price.$t+''
);
});
});
});
var shoppingCart=(函数(){
购物车=[];
//建造师
功能项(名称、价格、数量){
this.name=名称;
这个价格=价格;
this.count=计数;
}
var obj={};
//添加到购物车
obj.addItemToCart=函数(名称、价格、计数){
用于(购物车中的var项目){
if(购物车[项目]。名称===名称){
购物车[商品]。计数++;
回来
}
}
var项目=新项目(名称、价格、数量);
推车推(物品);
}
//总购物车
obj.totalCart=函数(){
var totalCart=0;
用于(购物车中的var项目){
totalCart+=购物车[项目]。价格*购物车[项目]。计数;
}
返回编号(totalCart.toFixed(2));
}
返回obj;
})();
$(文档).ready(函数(){
var sheetURL4=”https://spreadsheets.google.com/feeds/list/1lyCo_s17CxGzI2n83_H2IKTTE-ot9Pam1ZyC8t6qZmE/1/public/values?alt=json";
$.getJSON(sheetURL4,函数(data4){
var entryData4=data4.feed.entry;
console.log(data4);
each(entryData4,function()){
$(“#内容”)。追加(
此.gsx$name.$t+'
$'+此.gsx$price.$t+'

' ); }); }); $.getJSON(sheetURL4,函数(data4){ $('.add to cart')。单击(函数(事件){ event.preventDefault(); 变量名称=$(this.data('name'); var price=+$(this).data('price')。替换(/,/,'); 控制台日志(价格); //console.log($(this.data('price')); shoppingCart.addItemToCart(名称、价格、1); displayCart(); }); }); }); 函数displayCart(){ var total=shoppingCart.totalCart(); $(“#selectID”).change(函数(){ var totalWithTax=$(this.val(); $('.total tax').html(totalWithTax); var SUMTOTALL=总计++totalWithTax; $('.total all').html(sumtottall.toFixed(2)); }); $('.total cart').html(total.toFixed(2)); } displayCart();
小计:$

税额:$

总计:$

试试这个-

$.getJSON(sheetURL4, function (data4) {
    $('.add-to-cart').click(function (event) {
        ...
        shoppingCart.addItemToCart(name, price, 1);
        $('.total-all').html((shoppingCart.totalCart() + Number($("#selectID").val())).toFixed(2)); // add this, it will update total amount
        displayCart();
    });
});

每当使用
$(“#selectID”)将任何项目添加到购物车时,您可以在选择框上调用更改事件。触发器('change')
,以便更新总值

演示代码

var shoppingCart=(函数(){
购物车=[];
//建造师
功能项(名称、价格、数量){
this.name=名称;
这个价格=价格;
this.count=计数;
}
var obj={};
//添加到购物车
obj.addItemToCart=函数(名称、价格、计数){
用于(购物车中的var项目){
if(购物车[项目]。名称===名称){
购物车[商品]。计数++;
回来
}
}
var项目=新项目(名称、价格、数量);
推车推(物品);
}
//总购物车
obj.totalCart=函数(){
var totalCart=0;
用于(购物车中的var项目){
totalCart+=购物车[项目]。价格*购物车[项目]。计数;
}
返回编号(totalCart.toFixed(2));
}
返回obj;
})();
$(文档)。在('单击','上。添加到购物车',函数(事件){
event.preventDefault();
变量名称=$(this.data('name');
var price=+$(this).data('price')。替换(/,/,');
shoppingCart.addItemToCart(名称、价格、1);
$(“#selectID”).trigger('change')//调用select
});
//像这样使用,因为选择框是动态创建的
$(文档).on('change','#selectID',function(){
var total=shoppingCart.totalCart();
var totalWithTax=$(this.val();
$('.total tax').html(totalWithTax);
var SUMTOTALL=总计++totalWithTax;
$('.total all').html(sumtottall.toFixed(2));
$('.total cart').html(total.toFixed(2));
});

项目1
$10

项目2
$20

项目 3.
30美元


选择 税款1元1角 选择 税款2元2角 选择 税款3元3角 小计:美元

税额:$


总计:$

谢谢您的回答:D