gpt4 book ai didi

javascript - 根据parseInt计算价格

转载 作者:行者123 更新时间:2023-11-28 05:09:36 25 4
gpt4 key购买 nike

我有两个输入,用户输入产品的宽度高度(假设以毫米为单位)。因此,在 width=50height=20 之前,最低价格为 250 美元。然后我想每次宽度或高度编辑 10mm 时将总价增加 25 美元。因此,如果 w=60 且 h=20(或 w=50/h=30),总计应为 275 美元; $300 - 当w=60 且 h=30...

现在用我可怜的jquery知识我制作了这个怪物https://jsfiddle.net/fkqotzzb/

var basePrice = 250;
var priceForSm = 50;
var price300 = basePrice + priceForSm;
var price450 = price300 + (priceForSm * 3);
var price700 = price450 + (priceForSm * 5);
var price950 = price700 + (priceForSm * 5);

$("#stwidth, #stheight").keyup(function () {

var stwidth = parseInt($("#stwidth").val(), 10);
var stheight = parseInt($("#stheight").val(), 10);

if (stwidth > 113) {
$("#stwidth").val("113");
}

if (stheight > 62) {
$("#stheight").val("62");
}

if (stwidth >= 50 && stheight >= 20 || stwidth >= 110 && stheight >= 10) {
$(".stamp-full-price span").html(basePrice);

}

if (stwidth >= 30 && stheight >= 60 || stwidth == 80 && stheight == 20 || stwidth >= 60 && stheight >= 30 || stwidth >= 40 && stheight >= 40) {
$(".stamp-full-price span").html(price300);
}

if (stwidth >= 110 && stheight >= 20 || stwidth >= 110 && stheight == 30 || stwidth >= 70 && stheight >= 30 || stwidth >= 60 && stheight >= 40 || stwidth >= 50 && stheight >= 50 || stwidth >= 40 && stheight >= 60) {
$(".stamp-full-price span").html(price450);
}

if (stwidth >= 110 && stheight >= 40 || stwidth >= 110 && stheight >= 50 || stwidth >= 90 && stheight >= 40 || stwidth >= 80 && stheight >= 50 || stwidth >= 60 && stheight >= 60) {
$(".stamp-full-price span").html(price700);
}

if (stwidth >= 100 && stheight >= 60 || stwidth >= 111 && stheight >= 50) {
$(".stamp-full-price span").html(price950);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="stwidth" id="stwidth" value="50" class="form-control input-xs" maxlength="3"> x <input type="text" name="stheight" id="stheight" value="20" class="form-control input-xs" maxlength="2"> мм

<div class="stamp-full-price">
Total: <span>250</span>
</div>

这里的价格和尺寸是手动设置的,但我不想设置它们,所以最好通过宽度高度分别控制价格。它也没有涵盖所有尺寸的箱子,所以我无法预测在特定情况下会显示什么价格,这真的是怪物:)。

在尺寸之后,我还有一些其他选项,以单选按钮和复选框的形式。那么如何在定义尺寸后获取总价的值以添加单选/复选框的价格?

最佳答案

虽然您已经找到了获取宽度/高度的方法,并且希望每增加 10 个,价格就增加 25 美元,但只需计算一下:

var stwidth = parseInt($("#stwidth").val(), 10);
var stheight = parseInt($("#stheight").val(), 10);

var price = 250;

if(stwidth > 50) {
price += 25 * Math.ceil((stwidth - 50) / 10)
}

if(stheight > 20) {
price += 25 * Math.ceil((stheight - 20) / 10)
}

$(".stamp-full-price span").html(price);

当您处于类似情况时,请始终尝试按照纸上的方式进行数学计算,也许会更容易更快地学习并完成它。您可以只写下计算某些值的价格的所有步骤,然后用变量替换某些部分。

关于javascript - 根据parseInt计算价格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41479466/

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