在不使用 if...else 语句的情况下使用选定参数调用函数

Call function with selected parameter without using if...else statements

这是给我的场景,我想不出不使用条件语句该怎么做。我正在用 jQuery 编写它,但纯 JS 也可以。

<form>
<input type="radio" name="number" value="9" checked>9
<br>
<input type="radio" name="number" value="24">24
<br>
<input type="radio" name="number" value="57">57
<br>
<button>submit</button>
</form>

用户可以进行选择,这将导致函数调用,其中单个参数是以下之一:9、24 或 57。根据用户输入,必须执行以下指令:

如果参数为9则必须执行以下方法(按顺序):

alert('9 way to go');
// some other code i want to happen

如果参数为24则必须执行以下方法(按顺序):

alert('24 way to go');
// some other code i want to happen

如果参数为57则必须执行以下方法(按顺序):

alert('57 way to go');
// some other code i want to happen

通常我会等待点击。单击后,检查条件并根据条件触发正确的方法。我觉得这是一个棘手的问题,但我敢肯定我也可能 100% 错。任何想法如何在没有条件的情况下做到这一点?我在想也许关闭?不过我对他们不是很熟悉。

您可以获取单选按钮的选中值:

alert($('input[name="number"]').val() + ' way to go');

如何读取所选单选按钮的值并使用它来构建警报字符串?

$(function(){

   $("form").submit(function(e){
     e.preventDefault();
     var v= $("input[name='number']:checked").val();
     alert(v+' way to go');
   });

});

Here 是一个工作示例:

我不知道你要执行的其他方法是什么,但你可以将我们读取的值传递给你的其他方法,然后在那里做任何你想做的事情。

 var v= $("input[name='number']:checked").val();
 YourMethodA(v);
 YourMethodB(v)

但我认为,您仍然需要对值进行一些 if 条件检查以执行一些进一步的操作。可能是这个方法,也可能是你从那个方法调用的方法。