根据onchange-event调用函数

时间:2017-08-19 17:43:31

标签: javascript select switch-statement onchange option

我在下面遇到了这个问题。我想在2个选项中进行选择。当我选择"1"时,会调用F1()。选择"2"时,会调用F2()。不幸的是我的代码出了问题。有人可以帮忙吗? 谢谢你们!

function abc(element){
					var value1 = element.options[element.selectedIndex].value;
					
					switch(value1){
						case 1:
							F1();
							break;
						case 2:
							F2();
							break;
						
					}
				}
 <select id = "nextGeneration" onchange="abc(this)" >
<option value="1">1</option>
<option value="2">2</option> 

  </select> 

3 个答案:

答案 0 :(得分:3)

您的代码无效,因为Date#toString返回字符串值,您将它们与整数进行比较。在下面的代码中选择2个有效,因为它有&#34; 2&#34;但选择1不起作用

&#13;
&#13;
element.options[element.selectedIndex].value
&#13;
function F1(){
console.log(1);
}
function F2(){
console.log(2);
}
function abc(element){
                var value1 = element.options[element.selectedIndex].value;
                switch(value1){
                    case 1:
                        F1();
                        break;
                    case "2":
                        F2();
                        break;

                }
            }
&#13;
&#13;
&#13;

答案 1 :(得分:1)

<select id="nextGeneration" onchange="abc(this)">
<option value="1">1</option>
<option value="2">2</option> 

</select>

<script>
    function F2() {
        console.log("change 2");
    }

    function F1() {
        console.log("change 1");
    }

    function abc(element) {
        var value1 = element.options[element.selectedIndex].value;

        console.log(value1);

        switch (value1) {
            case "1":
                F1();
                break;
            case "2":
                F2();
                break;

        }
    }
</script>

您需要在引号中设置案例,例如:案例“2”。

答案 2 :(得分:1)

我在更改状态下使用了addEventListener,因此很容易通过select标签HTML调用两个不同的函数。检查下面给出的链接。

http://ztoi.blogspot.in/2017/08/call-function-based-on-onchange-event.html