Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery计算价格不起作用(正确)_Javascript_Jquery_Html_Shop - Fatal编程技术网

Javascript jQuery计算价格不起作用(正确)

Javascript jQuery计算价格不起作用(正确),javascript,jquery,html,shop,Javascript,Jquery,Html,Shop,脚本将查看所选选项的所有数据价格,并执行以下操作: $(function() { var base_price = 0; CalculatePrice(); $(".math1").on('change', function(e) { CalculatePrice(); }); function CalculatePrice() { var base_cost = base_price; $('.math1').each(function() {

脚本将查看所选选项的所有数据价格,并执行以下操作:

$(function() {

var base_price = 0;
CalculatePrice();

$(".math1").on('change', function(e) {
    CalculatePrice();
});


function CalculatePrice() {
    var base_cost = base_price;
    $('.math1').each(function() {
        base_cost += $(this).find('option:selected').data("price");
    });
    $("#price").text(base_cost.toFixed(2)*32);    
}


});
但它需要这样做:

data-price (of select 1) + data-price (of select 2)
它将返回一个标准值,例如:

data-price (of select 1) * data-price (of select 2)
小提琴:

注意:这不起作用

2 person room = $32, 2 2 person rooms = $64 (correctly)
4 person room = $64, 2 4 person rooms = $96 (must be + 64 instead of 32 so will return $128)
6 persoon room = $128, 2 6 person rooms= $160 (must be +128 so will return $256)

设置
基准价格=1


然后将
+=
更改为
*=

我认为根据您的逻辑,您需要将第二个select控制器更改为此

base_cost *= $(this).find('option:selected').data("price");

.data
可能是一个字符串。它将检查数据price=“(value)”,我认为这是可行的fine@DanielLisik它仍将执行“3 4人房间”=$128,但必须是64*3(192)仍返回问题“它将返回标准值”,然后在第二次选择时增加您的值抱歉,它仍返回+32是,你解决了。非常感谢你,我正在寻找一个关于monthOne问题的答案,*=我认为这不是一个正确的jQuery表单,因为它不起作用。你的第一个基本常数应该是+=但第二个应该是*=如果你想显示基本价格,即使没有选择第二个下拉列表,您可以轻松地将select-02中的第一个选项日期\价格值更改为1
<select class="twee math1 c2 level-3" name="roomcount" id="select-02">
    <option title="0b" data-price="0"></option>
    <option title="1b" data-price="1">1</option>
    <option title="2b" data-price="2">2</option>
    <option title="3b" data-price="3">3</option>
    <option title="4b" data-price="4">4</option>
</select>
$(".c2").each(function(index) {
    var y = $(this).find('option:selected').data("price");
    base_cost *= y;
});