Javascript 单选按钮不工作。不确定是按钮还是我的功能

Javascript 单选按钮不工作。不确定是按钮还是我的功能,javascript,html,radio-button,Javascript,Html,Radio Button,我试图在html中使用单选按钮,但当我测试代码时,我想要发生的事情并没有发生。我不确定这是因为单选按钮还是我做的功能。 以下是单选按钮,以及我的一些其他输入: <input type="text" id="num1"> +<input type="radio" name="group1" id="add" value="add"> -<input type="radio" name="group1" id="subtract" value="subtract">

我试图在html中使用单选按钮,但当我测试代码时,我想要发生的事情并没有发生。我不确定这是因为单选按钮还是我做的功能。 以下是单选按钮,以及我的一些其他输入:

<input type="text" id="num1">
+<input type="radio" name="group1" id="add" value="add">
-<input type="radio" name="group1" id="subtract" value="subtract">
*<input type="radio" name="group1" id="multiply" value="multiply">
/<input type="radio" name="group1" id="divide" value="divide">
<input type="text" id="num2">
<input type="text" id="answer" readonly>
<input type="button" value="Calculate" onClick="operation()"
谢谢

这里有一个简单的例子

按如下方式修改脚本:

function operation() {
var ans =document.getElementById("answer");
if (document.getElementById("add").checked) {
    ans.value= calculate('add');
}
if (document.getElementById("subtract").checked) {
    ans.value= calculate('subtract');
}
if (document.getElementById("multiply").checked) {
    ans.value= calculate('multiply');
}
if (document.getElementById("divide").checked) {
    ans.value= calculate('divide');
}
}
function calculate(action){
        var num1 = document.getElementById("num1").value;
        var num2 = document.getElementById("num2").value;
        var result;
        switch(action){
            case 'add':
                result= parseInt(num1)+parseInt(num2);
                break;

            case 'subtract':
                result= num1-num2;
                break;

            case 'multiply':
                result= num1*num2;
                break;

            case 'divide':
                result= num1/num2;
                break;
        }
        return result;
    }

旁注:现在可能是开始关闭html标记的好时机

在live JSFIDLE.NET中显示您的代码这里有calculate()函数?这将非常有用[1]:如果在每个if语句中都放一个console.log,会发生什么情况?@tilwinjoy calculate函数已经工作了,他们不是第一个issue@user2059810如果你接受ans,如果它对你有帮助,那就太好了!
function operation() {
var ans =document.getElementById("answer");
if (document.getElementById("add").checked) {
    ans.value= calculate('add');
}
if (document.getElementById("subtract").checked) {
    ans.value= calculate('subtract');
}
if (document.getElementById("multiply").checked) {
    ans.value= calculate('multiply');
}
if (document.getElementById("divide").checked) {
    ans.value= calculate('divide');
}
}
function calculate(action){
        var num1 = document.getElementById("num1").value;
        var num2 = document.getElementById("num2").value;
        var result;
        switch(action){
            case 'add':
                result= parseInt(num1)+parseInt(num2);
                break;

            case 'subtract':
                result= num1-num2;
                break;

            case 'multiply':
                result= num1*num2;
                break;

            case 'divide':
                result= num1/num2;
                break;
        }
        return result;
    }