Javascript 在一个分区中显示2个自定义数据属性项。例如:货币和;数量

Javascript 在一个分区中显示2个自定义数据属性项。例如:货币和;数量,javascript,jquery,css,Javascript,Jquery,Css,我有一个基于HTML、JavaScript和PHP的电子商务网站 在“产品详细信息”页面上,用户可以将产品添加到购物车,所以我显示的是购物车价值的总额 我希望始终显示十进制数(10,2)格式 目前,我的代码使用最小的东西。如果产品价格为12.00,单击“添加到购物车”,计数器div仅显示12 .p1[数据计数]:之后{ 位置:绝对位置; 右:1%; 最高:1%; 内容:attr(数据计数); 字体大小:10px; 填充:.2em; 线高:1米; 颜色:白色; 背景#21468b; 文本对齐:

我有一个基于HTML、JavaScript和PHP的电子商务网站

在“产品详细信息”页面上,用户可以将产品添加到购物车,所以我显示的是购物车价值的总额

我希望始终显示十进制数(10,2)格式

目前,我的代码使用最小的东西。如果产品价格为12.00,单击“添加到购物车”,计数器div仅显示12


.p1[数据计数]:之后{
位置:绝对位置;
右:1%;
最高:1%;
内容:attr(数据计数);
字体大小:10px;
填充:.2em;
线高:1米;
颜色:白色;
背景#21468b;
文本对齐:居中;
宽度:100%;
字体大小:正常;
}

变量总和='0';
var ProductSellingPrice='12.00'
$('#insert')。单击(函数(){
总数=数量(总数)+数量(产品销售价格);
$('总计').attr('数据计数',总计);
});
因此,单击insert,将添加现有的产品总价格和当前价格。如果购物车上没有产品,则p1不显示任何值,因此如果为空/0,则希望始终显示零。如果产品价格为12.00,则仅显示12。如果产品价格为12.50,则显示12.50

我希望它总是显示十进制&也使用数据属性显示货币符号


显示小数点的问题由@Simone解决,我无法找到在使用数据属性显示值之前显示货币的答案。

如果您想要12.00而不是12,则必须使用

因此,您必须将所有单个产品的总计(数量*价格是单个总计)转换为浮点数,当您进行总计时,取该数字并执行以下操作:

Number.parseFloat(total).toFixed(2); // two decimal
例如:

var quantity = 10;
var price = 11;
var tot = parseFloat(quantity * price).toFixed(2);
console.log(tot); // "110.00"

如果你想要12点而不是12点,你必须使用

因此,您必须将所有单个产品的总计(数量*价格是单个总计)转换为浮点数,当您进行总计时,取该数字并执行以下操作:

Number.parseFloat(total).toFixed(2); // two decimal
例如:

var quantity = 10;
var price = 11;
var tot = parseFloat(quantity * price).toFixed(2);
console.log(tot); // "110.00"

从代码中我根本看不出为什么它应该显示整数值的小数。你能给动态值分条以便我们测试它吗?从代码中我看不出为什么它应该显示整数的小数。你能给动态值分条以便我们测试它吗?我这样做了:total=Number.parseFloat(total).toFixed(2)+Number.parseFloat(ProductSellingPrice).toFixed(2);点击insert,我得到了:NaN11.00你能告诉我如何使用这个:Number.parseFloat(total.toFixed(2);我在回答中加了一个例子。在计算结束时调用toFixed(2),因为它将返回string.awesome。货币符号b4的值呢?我这样做了:total=Number.parseFloat(total).toFixed(2)+Number.parseFloat(ProductSellingPrice).toFixed(2);点击insert,我得到了:NaN11.00你能告诉我如何使用这个:Number.parseFloat(total.toFixed(2);我在回答中加了一个例子。在计算结束时调用toFixed(2),因为它将返回string.awesome。货币符号b4的价值是多少?