gpt4 book ai didi

javascript - Jquery计算问题

转载 作者:行者123 更新时间:2023-11-28 00:49:35 26 4
gpt4 key购买 nike

我正在尝试创建一个脚本,从多个选择框中获取一些值,然后对它们进行一些数学运算。问题是脚本需要放置在 SaaS 环境中,因此我做事的选择非常有限。下面描述的方法是执行此操作的唯一方法。

我面临的问题是我可以从选择框中接收正确的值,但无法将它们转换为 2 位小数。此外,我无法将初始值 adviesprijs 转换为例如。 1500 而不是 1.5 或 1.500.00。我真的看不出我做错了什么。

我创建了一个 fiddle here我认为这最能描述我的问题!

我的脚本

function update_amounts() {

var perc = '10' || 0; //this is a value from a Twig tag. Not relevant for question!
var korting = ((100-perc)/100);

var adviesprijs = '€1.500,00'.replace(/[^\d.]/g, ''); //gives 1.5 or 1.500.00 etc..
var adviesprijsValue = parseFloat(adviesprijs) || 0;


var sum = 0.0;
$('#product_configure_form .product-configure-custom-option select').each(function () {
var optionText = $(this).find('option:selected').text();
var matches = optionText.match(/\(([^)]+)\)/g) || [];
if (matches.length > 0) {
var priceText = matches[matches.length - 1];
if (priceText.indexOf("€") > -1) {
var priceClean = priceText.replace(/[^0-9\+\-\.\,]/g, '');
var priceValue = parseFloat(priceClean) || 0;

sum += priceValue;
}
}
});
var sum2 = sum+adviesprijsValue;

var sumBtw = (sum2*1.21).toFixed(2);
$('#amount').text('€' +sum2);//
$('#amountBtw').html('(€'+sumBtw+' - Incl. 21% BTW)');//.toFixed(2)
}

$(document).ready(function(){
$( "#product_configure_form").on("change", ".product-configure-custom-option select", update_amounts);
});

HTML 相当长,所以最好看一下 Fiddle。谁能帮我做一个正确的计算......?!

提前致谢

最佳答案

您从荷兰语格式到普通浮点格式的转换不正确。

考虑使用:

.replace(/[^\d,]/g,"").replace(",",".")

工作示例:http://jsfiddle.net/pgaphma3/3/

编辑

要允许使用加号或减号,请使用 /[^\d,\-+]/g

关于javascript - Jquery计算问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26933959/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com