Javascript 选中combobox值并选择折扣

Javascript 选中combobox值并选择折扣,javascript,Javascript,我的剧本有问题 我想更改组合框更新时的适当值,并检查您是否折扣 我的js function desconto(a){ var result; switch(a){ case 3: result = 17; break; case 6: result = 33; break;

我的剧本有问题

我想更改组合框更新时的适当值,并检查您是否折扣

我的js

function desconto(a){

    var result;

    switch(a){

            case 3: 
                result = 17;
                break;

            case 6: 
                result = 33;
                break;

            case 12:
                result = 42;
                break;

            case 24:
                result = 59;
                break;

            default:
                result = 0;
                break;
    }


    return result;


}

function tratar_valor(value,prefix){

    if(desconto(value) === 0){

       return value * prefix;

   }else{

       return (value * desconto(value)) / 100 * prefix;

   }



}

function change_value(a,b,c){
    var value    = a.options[a.selectedIndex].value; 
        document.getElementById(b).innerHTML = '€ '+ tratar_valor(value,c) ;
}


</script>
函数描述(a){
var结果;
开关(a){
案例3:
结果=17;
打破
案例6:
结果=33;
打破
案例12:
结果=42;
打破
案例24:
结果=59;
打破
违约:
结果=0;
打破
}
返回结果;
}
函数tratar_valor(值,前缀){
如果(描述(值)==0){
返回值*前缀;
}否则{
返回(value*descon(value))/100*前缀;
}
}
函数更改_值(a、b、c){
var value=a.options[a.selectedIndex].value;
document.getElementById(b).innerHTML='€'+tratar_valor(值,c);
}
还有我的HTML

                    <li class="price-row">
                        <h1 id="val">€20</h1>
                        <span>
                        <select id="lol" onchange="javascript:change_value(this,'val',20)">
                        <option value="1">month</option>
                        <option value="3">3 months - 17%</option>
                        <option value="6">6 months - 33%</option>
                        <option value="12">1 year  - 42%</option>
                        <option value="24">2 years - 59%</option>
                        </select>
                        </span></li>
  • €20 月 3个月-17% 6个月-33% 1年-42% 2年-59%
  • 我一直在观察,这个值似乎在开关上作为默认值传递

    因此,不影响适当的折扣


    我用php编程,对javascript有非常基本的了解,但无法解决这个问题。

    请确保从中解析字符串

    var value    = a.options[a.selectedIndex].value; 
    
    作为整数,因为它可能是字符串:

    var value    = parseInt(a.options[a.selectedIndex].value);