根据形式选择计算多个座位价格

Calculate multiple seating prices based on form selection?

本文关键字:计算 选择      更新时间:2023-09-26

我正在尝试创建一个基于用户输入动态更新定价的机票预订表单。

到目前为止,我所能做的是根据用户选择的组合来过滤选项(这是基于某些标准的)。

接下来我需要做的是让表格根据所选的数量和票的类型计算出每个座位的价格,然后把它们加起来得到总价格。

我尝试创建一个关联数组,它根据特定的条件定义每种类型门票的价格:

//price of seating
function getPrices(day, time) {
    var day = $('#whichDay').val(); // gets day value
    var time = $('#whichSession').val(); //gets time value
    var prices = new Array(); // creates the array
    if (day == 'mon' || day == 'tue' || time == '1pm') {
        prices["SA"] = 12;
        prices["SP"] = 10;
        prices["SC"] = 8;
        prices["FA"] = 25;
        prices["FC"] = 20;
        prices["B1"] = 20;
        prices["B2"] = 20;
        prices["B3"] = 20;
    } else {
        prices["SA"] = 18;
        prices["SP"] = 15;
        prices["SC"] = 12;
        prices["FA"] = 30;
        prices["FC"] = 25;
        prices["B1"] = 30;
        prices["B2"] = 30;
        prices["B3"] = 30;
    }
    return prices;
}

问题是我不确定从这里去哪里,或者我是否已经适当地创建了表,以便它允许这种计算。

有很多工作,所以我创建了一个小提琴给你们玩:http://jsfiddle.net/qtsxkgrw/2/

提前感谢!

首先,看在上帝的份上,请停止使用表格。: D

您的解决方案可能是使用data属性。像这样在你的HTML中:
<input  data-price="99.99"    type="checkbox" class="ticketType" name="FA" value="FA"><span class="first-class">First Class </span> - Adult</td>

并使用:

获取值
var price = $(this).data("price");

希望这对你有帮助!