2014-11-28 3 views
0

Я создаю налоговый калькулятор, и когда пользователь выбирает опцию из вариантов выбора списка, я хочу создать способ, которым каждый выбор будет выполнять другую формулу в моей функции. поэтому, если пользователь выбирает выбор 1, он будет делать формулу 1, если они выберут вариант 2, он будет делать формулу 2 так далее и т. д. Я пытался это сделать, но каждый раз он заставляет последний выбор.как делать разные вещи с каждым дротиком? HTML

ответ

0

Вы можете попробовать что-то вроде этого:

<select id="test"> 
    <option value=1>Sum</option> 
    <option value=2>Difference</option> 
</select> 

<script> 
document.getElementById("test").onchange = function(){ 
    var test = document.getElementById("test"); 
    switch(test.options[test.selectedItem].value){ 
      case 1: 
       add(); 
      break; 

      case 2: 
       sub(); 
      break; 
    } 
} 
</script> 
+0

Я также делаю другие вещи внутри этой функции, поэтому, добавляя эту строку, вы говорите: «document.getElementById (« test »). Onchange = function() {« будет ли это совершенным с другими вещами, которые я делаю в it> – user3630455

+0

Почему вы не добавляете эти вещи в эту функцию? Не будет ли это работать? –

0

Вы можете использовать что-то вроде этого:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script> 
<select id="myDropdownId"> 
    <option value="">--choices--</option> 
    <option value="1" >formula 1</option> 
    <option value="2" >formula 2</option> 
    <option value="3" >formula 3</option> 
    <option value="4" >formula 4</option> 
</select> 
<script type="text/javascript"> 
    $(document).on("change", "#myDropdownId", function() { 
     var actionId=$(this).val(); 

     if (actionId==1) { 
      alert('formula 1'); 
      //formula 1 goes here.. 
     } else if (actionId==2) { 
      //formula 2 goes here.. 
     } else if (actionId==3) { 
      //formula 3 goes here.. 
     } else if (actionId==4) { 
      //formula 4 goes here.. 
     } else { 
      alert('inavlid formula'); 
     } 
    }); 
</script> 

Вы можете найти демо ссылку ниже:

DEMO

Я надеюсь, это поможет вам. :)

+0

где «изменение» происходит из-под верха? – user3630455

+0

@ user3630455 «change» - это встроенная функция события jQuery, которая вызывается или вызывается для изменения/выбора выбора из раскрывающегося списка ... Надеюсь, это вас впечатлит. –

+0

Я обновил свой ответ с помощью ссылки Demo, которая покажет вам, как изменится работа. –