Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery-项目合计和小计_Jquery - Fatal编程技术网

jQuery-项目合计和小计

jQuery-项目合计和小计,jquery,Jquery,HTML结构分为单独的订单,每个订单上有多个项目 我的代码存在的问题是,每个订单的总计是累积的,而不仅仅是添加该订单的小计。如何获取每个订单实例的总计,而不是将总计与每个额外的订单累加 $.fn.digits=函数(){ 返回此。每个(函数(){ $(此).text( $(本) .text() 。替换(/(\d)(?=(\d\d\d)+(?!\d))/g,“$1”) ); }); }; $(文档).ready(函数(){ var historyTotal=0; var-historyXp=0;

HTML结构分为单独的
订单
,每个
订单上有多个
项目

我的代码存在的问题是,每个
订单的
总计
是累积的,而不仅仅是添加该
订单的小计。如何获取每个
订单
实例的
总计
,而不是将总计与每个额外的
订单
累加

$.fn.digits=函数(){
返回此。每个(函数(){
$(此).text(
$(本)
.text()
。替换(/(\d)(?=(\d\d\d)+(?!\d))/g,“$1”)
);
});
};
$(文档).ready(函数(){
var historyTotal=0;
var-historyXp=0;
$('[data id=“history”]')。每个(函数(){
常量项=$(此项);
var xp=10;
风险值费用=0.15;
变量数量=项目.查找(“.history\uuuu sell”).text();
var price=item.find(“.history\uuu cost”).text();
var小计=数量*数量(价格);
var xptotal=数量(数量)*数量(xp);
var bonusXp=数字(
item.closest(“[data id='order']”)。find(“.bonus_uuXP”).text()
);
item.find(“.history\uu subtotal”).text(subtotal.toFixed(2)).digits();
项目
.find(“历史费用”)
.text((小计*(1*费用)).toFixed(2))
.数字();
historyTotal+=parseInt(
item.find(“.history\uuu subtotal”).text().replace(“,”和“”)
);
项目
.closest(“[data id='order']”)
.find(“.order\u total”)
.text(((1+费用)*历史总计)。toFixed(2))
.数字();
项目
.closest(“[data id='order']”)
.find(“订单费”)
.text((费用*历史总计).toFixed(2))
.数字();
//XP:
item.find(“.xp_uuutotal--history”).text(xptotal.digits();
historyXp+=parseInt(
item.find(“.xp\uu total--history”).text().replace(“,”,”)
);
项目
.closest(“[data id='order']”)
.find(“.xp\u总计--订单”)
.text(历史XP)
.数字();
});
$(“[data id='order']”)。每个(函数(){
var总和=0;
const item=$(this.find(“.xp_uutotal--order”);
sum+=parseInt(item.text().replace(“,”,”);
$(“#total_xp”).text(sum).digits();
});
$(“[data id='order']”)。每个(函数(){
var总和=0;
const item=$(this.find(“.order\u total”);
sum+=parseInt(item.text().replace(“,”,”);
$(“#总计”).text(总和).digits();
});
});
span{
保证金权利:0.3雷姆;
}
.标题{
填充:0.9雷姆2.3雷姆;
边框:3件纯蓝;
}
.header\u标签{
显示器:flex;
宽度:200px;
}
.标题\uuuu标签范围{
左边距:自动;
}
.历史名称{
背景:#fafafa;
填充:0.9雷姆0;
}
[数据id=“订单”]{
填充:0.9雷姆2.3雷姆;
边框:2倍实心;
保证金:2.3雷姆0
}
[数据id=“历史记录”]{
保证金:1.3雷姆0.9雷姆;
填充:0.9雷姆;
边框:2倍纯绿;
}
[数据id=“历史记录”]>*{
保证金:0.3雷姆0;
}
.历史小计{
边框:1px实心;
}
.订单标题{
背景:#ececec ;;
}

总计:0
XP:0
订单总数:000
订购费:000
订单XP:000
项目1(10xp)
25售出
10成本
000小计
费用:0
000XP
项目2(10xp)
10售出
50成本
000小计
费用:0
000XP
订单总数:000
订购费:000
订单XP:000
项目1(10xp)
25售出
10成本
000小计
费用:0
000XP
项目2(10xp)
10售出
50成本
000小计
费用:0
000XP

如果要显示单独的小计,则需要运行嵌套的。每个循环,如下所示

$.fn.digits=函数(){
返回此。每个(函数(){
$(此).text(
$(本)
.text()
。替换(/(\d)(?=(\d\d\d)+(?!\d))/g,“$1”)
);
});
};
$(文档).ready(函数(){
$('[data id=“order”]')。每个(函数(){
var historyTotal=0;
var-historyXp=0;
$(this).find('[data id=“history”]')。每个(函数(){
常量项=$(此项);
var xp=10;
风险值费用=0.15;
变量数量=项目.查找(“.history\uuuu sell”).text();
var price=item.find(“.history\uuu cost”).text();
var小计=数量*数量(价格);
var xptotal=数量(数量)*数量(xp);
var bonusXp=数字(
item.closest(“[data id='order']”)。find(“.bonus_uuXP”).text()
);
item.find(“.history\uu subtotal”).text(subtotal.toFixed(2)).digits();
item.find(“.history_uuFee”).text((小计*费用).toFixed(2)).digits();
历史总计+=小计;
/*
historyTotal+=parseInt(
item.find(“.history\uuu subtotal”).text().replace(“,”和“”)
);*/
item.closest(“[data id='order']”)。find(.order_uTotal”)。text((1+费用)*historyTotal)。toFixed(2))。digits();
item.closest(“[data id='order']”)。find(“.order_uFee”)。text((fee*historyTotal)。toFixed(2))。digits();
//XP:
item.find(“.xp_uuutotal--history”).text(xptotal.digits();
historyXp+=parseInt(item.find(“.xp_uutotal--history”).text().replace(“,”,”);
item.closest(“[data id='order']”)。find(“.xp_uutotal--order”).text(historyXp.digits();
});
});
var总和=0;
$(“[data id='order']”)。每个(函数(){
const item=$(this.find(“.xp_uutotal--order”);
sum+=parseInt(item.text().replace(“,”,”);
$(“#total_xp”).text(sum).digits();
});
var总和=0;
$(“[data id='order']”)