我想知道是否可以在选择下拉列表时添加值。
例如: 如果选择以下其中一个..
<select class="item_print-colour">
<option value="0" selected="selected" disabled="disabled">Print Colour..</option>
<option value="B&W" value="Print Colour:"> Black And White </option>
<option value="Full-Colour"> Full Colour </option>
</select>
我希望以下data-base_price增加0.20:
<span class="item_price cd_price" data-base_price="0.53"></span>
我已尝试过的内容
但无论我尝试什么,我都无法改变选择:
$(".item_print-colour").on("select", function() {
var base_price = $(".cd_price").data("base_price");
var addition = 0;
if (this.value = B&W) addition = 0.20;
$(".cd_price").text((base_price + addition).toFixed(2));
}).trigger("select");
修改
我还有其他因素决定data-base_price,这就是为什么我要添加到当前data-base_price中的任何内容。
答案 0 :(得分:1)
on('change'...
未选择if(this.value == 'B&W')
base_price += 0.2;
trigger('select');
答案 1 :(得分:0)
也许你只是错过了报价?
if (this.value == "B&W")
...
答案 2 :(得分:0)
尝试以下方法:
$(".dvd_case_quantity").on("change", function() {
var base_price = $(".cd_price").data("base_price");
var addition = (this.value == 'B&W' ? 0.20 : 0);
var newPrice = (base_price + addition).toFixed(2);
$(".cd_price").text(newPrice);
});
注意:上述解决方案将newPrice
分隔为单独的变量。你可以保持原样,但我尝试采用更加调试友好的风格,这将使测试更容易。