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;
});