我从选择框中显示实时计算价格,并将金额乘以另一个选择框,如下所示:
$('#tour_type').change(function(){
$('#price').val($("#tour_type option:selected").val());
});
我的选择:
<option selected="" value="">Select a Tour</option>
<option value="3900">3 Hour Tour</option>
<option value="5900">Full Day Tour</option>
<option value="11800">2 Day Tour</option>
价值乘以:
<option selected="" value="">Select Riders</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
我要做的是根据骑手的数量(选择2)减少选择1中的一些值
例如:
选择3小时游览| 1-3车手价值是3900 | 4-6车手值为3400 |等
选择全日游| 1-3车手值为5900 | 4-6车手值为5100 |等
如何根据select2?
中的值更改select1的值通过给出的答案我试过了:
$("#riders").change(function(){
if($("#riders").val()=="1" || $("#riders").val()=="2" || $("#riders").val()=="3")
{
$('#tourtype option:content("3 Hour Tour")').attr('value', '1000');
$('#tourtype option:content("Full Day Tour")').attr('value', '2000');
$('#tourtype option:content("2 Day Tour")').attr('value', '3000');
}
else if($("#riders").val()=="4" || $("#riders").val()=="5" || $("#riders").val()=="6")
{
$('#tourtype option:content("3 Hour Tour")').attr('value', '4000');
$('#tourtype option:content("Full Day Tour")').attr('value', '5000');
$('#tourtype option:content("2 Day Tour")').attr('value', '6000');
}
});
<select name="tourtype" id="tourtype">
<option value="3900">3 Hour Tour</option>
<option value="5900">Full Day Tour</option>
<option value="11800">2 Day Tour</option>
</select>
<select name="riders" id="riders">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
</select>
但这不起作用,我在这里做错了什么?
答案 0 :(得分:1)
根据Riders编号使用switch语句。
function calculateDiscount() {
switch ($(RIDERS_SELECT).val()) {
case 1:
case 2:
case 3:
return 500;
case 4:
case 5:
case 6:
return 800;
// etc.
}
}
答案 1 :(得分:1)
你可以做这样的事情
$(document).ready(function()
{
$('#riders').on("change", function()
{
alert("hie");
if($("#riders").val()=="1" || $("#riders").val()=="2" || $("#riders").val()=="3")
{
$("#tourtype option").each(function() {
if($(this).text()=="3 Hour Tour")
{
$(this).attr('value', '1000');
}
else if($(this).text()=="Full Day Tour")
{
$(this).attr('value', '2000');
}
else
{
$(this).attr('value', '3000');
}
console.log($(this).text());
});
}
else if($("#riders").val()=="4" || $("#riders").val()=="5" || $("#riders").val()=="6")
{
$("#tourtype option").each(function() {
if($(this).text()=="3 Hour Tour")
{
$(this).attr('value', '4000');
}
else if($(this).text()=="Full Day Tour")
{
$(this).attr('value', '5000');
}
else
{
$(this).attr('value', '6000');
}
console.log($(this).text());
});
}
else
{
alert("hie3");
$("#tourtype option").each(function() {
if($(this).text()=="3 Hour Tour")
{
$(this).attr('value', '7000');
}
else if($(this).text()=="Full Day Tour")
{
$(this).attr('value', '8000');
}
else
{
$(this).attr('value', '9000');
}
console.log($(this).text());
});
}
});
});