javascript - 计算百分比和分割值
问题描述
我有一个带有多个选项的简单产品页面。每次选择一个选项时,这些值都会发布到 php.ini 文件中。有一个选项可以根据总金额计算额外费用
这就是问题所在,一旦选择了一个选项,所有计算都在后端完成,% 被添加并返回,效果很好。但我想在跨度标签中分别显示总 + %。但它适用于第一个值,其余的都不正确
所以假设用户点击Day 1
哪个有 10% 的额外
- 计算完成并将 10% 添加到后端 php 文件的总数中。
- 我根据返回的总数进行额外计算,从总数中减去 % 并显示它
- 如果总数为 198(这包括单击时添加的 10%),则应显示第 1 天 180,00+18,00(10%) 第 2 天 180,00+36,00(20%) 第 3 天 180,00 +54,00
在我编写的代码中,它仅正确计算单击的值,而其余的值不正确.. 每次单击它都会重新计算并显示不同的值。
不幸的是,我无法编辑 php 文件,所以我必须使用 JavaScript 返回的总数。所以每次用户点击一个选项时,它都会计算总数
我不确定这是否可以完成,但任何帮助将不胜感激。
$.ajax({
url: 'calculation.php',
type: 'POST',
data: option_data,
success: function(total) {
$('.total').each((index, item) => {
const dateRef = +($(item).attr("data-ref")); //percentage
var grabtot = thistotal.split(" ")[2].replace(',', '.');
var theid = $(item).attr("id");
var amount = (dateRef / 100) * grabtot;
var without_percentage = parseFloat(grabtot) - parseFloat(amount);
$('#' + theid).html("+ € " + amount.toFixed(2).replace(".", ","));
})
}
});
<ul>
<li class="radio">
<label class="img2">
<input type="radio" class="radio" style="display:none;" name="option[979]" value="2497">
<span>
<h3>Day 1</h3>
<p>
<span class="total" id="del-1" data-ref="10.00"></span>
</p>
</span>
</label>
</li>
<li class="radio">
<label class="img2">
<input type="radio" class="radio" style="display:none;" name="option[980]" value="2597">
<span>
<h3>Day 5</h3>
<p>
<span class="total" id="del-2" data-ref="20.00"></span>
</p>
</span>
</label>
</li>
<li class="radio">
<label class="img2">
<input type="radio" class="radio" style="display:none;" name="option[959]" value="2407">
<span>
<h3>Day 7</h3>
<p>
<span class="total" id="del-3" data-ref="30.00"></span>
</p>
</span>
</label>
</li>
</ul>
编辑
计算.php 会返回什么?
它实际上是预订系统。该表格将包含产品成本、包装、交货和退货天数
- 所以如果这本书的成本是 10,00
- 包装 3,00
- 交货 5,00
- 返回天数,选择的百分比值。因此,如果选择 1 天,金额将为总和的 20%
例如:10+3+5 = 18 第 1 天的费用 20% 从 18 开始,即 3.6
总回报将是 21.6
每次单击选项时都会调用该函数
解决方案
推荐阅读
- heroku - 我在我的 Discord 机器人中使用 Quick.db。每次我部署更新时,数据库都不会保存,为什么会这样,我该如何解决?
- sql - 将本机 SAS 日期时间转换为 oracle
- c# - 为什么我的列表对象添加功能不起作用?
- javascript - 我如何访问 GeoJson 中的几何图形
- snowflake-cloud-data-platform - INFORMATION_SCHEMA.TABLES 访问所有模式和表
- javascript - Discord.js 清除命令不接受数字
- amazon-web-services - DynamoDb 最终一致性:索引还是记录?
- javascript - 在 React 中实现 jQuery 插件
- bash - 通过在 vm 实例上为该映像指定 sh 或 bash 来运行 docker 容器时出现问题
- php - 在 html 中使用 if 条件