如何根据选择选项更改变量的值:选中
我有一个选择框,我想根据所选的选项更改变量的值。
$(function() { var selected_pizza = ""; var toppingPrice = 0; $('#select').change(function() { selected_pizza = $('#select option:selected').text(); alert(selected_pizza); }); if(selected_pizza.indexOf('Chicago,7') != 1 ) { toppingPrice =parseFloat(0.70); } if(selected_pizza.indexOf('NY,10') != 1) { toppingPrice = parseFloat(0.90); } if(selected_pizza.indexOf('NY,12') != 1) { toppingPrice = parseFloat(1.05); } if(selected_pizza.indexOf('NY,16') != 1) { toppingPrice = parseFloat(1.30); } });
但这没有给我正确的价值,有没有其他方法可以做到这一点。
谢谢
试试这个:
var selected_pizza; $('#select').change(function() { selected_pizza = $(this).val(); }
您的indexOf调用在逗号后面没有空格。
选项元素中的文本在每个逗号后面包含一个空格。 传递给indexOf的字符串不会。