在不使用 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 条件检查以执行一些进一步的操作。可能是这个方法,也可能是你从那个方法调用的方法。
这是给我的场景,我想不出不使用条件语句该怎么做。我正在用 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 条件检查以执行一些进一步的操作。可能是这个方法,也可能是你从那个方法调用的方法。