2016-08-03 73 views
0

我想改变文本框的值依赖于其他领域,我没有,但没有工作,获得在“resoom”字段为零,如何取决于其他领域

<script> 
 
function resoome(){ 
 
\t var get_balance=document.getElementById("Etisalat").value 
 
\t var alfees; 
 
switch(get_balance){ 
 
\t \t case get_balance>=0.5 && get_balance<=1: 
 
\t alfees=0.10; 
 
\t break; 
 
\t case get_balance>1 && get_balance<=3: 
 
\t alfees=0.15; 
 
\t break; 
 
\t case get_balance>3 && get_balance<=5: 
 
\t alfees=0.25; 
 
\t break; 
 
\t case get_balance>5 && get_balance<=10: 
 
\t alfees=0.50; 
 
\t break; 
 
\t case get_balance>10 && get_balance<=15: 
 
\t alfees=0.60; 
 
\t break; 
 
\t case get_balance>15 && get_balance<=20: 
 
\t alfees=0.70; 
 
\t break; 
 
\t case get_balance>20 && get_balance<=30: 
 
\t alfees=0.80; 
 
\t break; 
 
\t case get_balance>30 && get_balance<=40: 
 
\t alfees=0.90; 
 
\t break; 
 
\t case get_balance>40 && get_balance<=70: 
 
\t alfees=1; 
 
\t break; 
 
\t case get_balance>70 && get_balance<=100: 
 
\t alfees=1.25; 
 
\t break; 
 
\t case get_balance>100 && get_balance<=150: 
 
\t alfees=1.50; 
 
\t break; 
 
\t case get_balance>150 && get_balance<=200: 
 
\t alfees=2; 
 
\t break; 
 
\t case get_balance>200: 
 
\t alfees=3; 
 
\t break; 
 
\t  default: 
 
     alfees=0; 
 
\t \t } 
 
\t \t resoom.value=alfees; 
 
\t \t } 
 
</script>
\t <select name="Etisalat" id="Etisalat" onfocusout="resoome()" class="select Etisalat"> 
 
     <option value="0.5">0.5</option> 
 
     <option value="1">1</option> 
 
     <option value="1.5">1.5</option> 
 
     <option value="3">3</option> 
 
     <option value="4">4</option> 
 
     </select> 
 

 
<input type="number" id="resoom"style="width:90px" name="resoom" placeholder="الرسوم"/>

更改文本字段

我怎样才能解决这个问题,使resoom值变化取决于其他费尔德 感谢

+0

我相信你的问题可能与你如何阅读select的价值。尝试使用此代替:'var get_balance = parseFloat(document.getElementById(“Etisalat”)value);' – BlackPanther

回答

0
function resoome() { 
    var x = document.getElementById("Etisalat").value; 
    var get_balance = parseInt(x); 
    var alfees; 
    switch (true) { 
     case get_balance > 0 && get_balance <= 1 : 
      alfees = 0.10; 
      break; 
     case get_balance > 1 && get_balance <= 3: 
      alfees = 0.15; 
      break; 
     case get_balance > 3 && get_balance <= 5: 
      alfees = 0.25; 
      break; 
     case get_balance > 5 && get_balance <= 10: 
      alfees = 0.50; 
      break; 
     case get_balance > 10 && get_balance <= 15: 
      alfees = 0.60; 
      break; 
     case get_balance > 15 && get_balance <= 20: 
      alfees = 0.70; 
      break; 
     case get_balance > 20 && get_balance <= 30: 
      alfees = 0.80; 
      break; 
     case get_balance > 30 && get_balance <= 40: 
      alfees = 0.90; 
      break; 
     case get_balance > 40 && get_balance <= 70: 
      alfees = 1; 
      break; 
     case get_balance > 70 && get_balance <= 100: 
      alfees = 1.25; 
      break; 
     case get_balance > 100 && get_balance <= 150: 
      alfees = 1.50; 
      break; 
     case get_balance > 150 && get_balance <= 200: 
      alfees = 2; 
      break; 
     case get_balance > 200: 
      alfees = 3; 
      break; 
     default: 
      alfees = 0; 
    } 
    document.getElementById("resoom").value = alfees; 
} 

1.Get变量(get_balance)值作为使用parseInt函数的数字。 2.如果您在案例中使用的表达式返回true或false,则在switch case中使用true。

+0

它运行良好,但当“Etisalat”字段携带“0.5”时,我得到“0”而不是“0.1”? –

+0

使用parseFloat而不是ParseInt – user6598450