-2

我正在尝试制作一个简单的计算器,其中一个人会输入两个值,然后当单击一个按钮时,一个警告框会给出结果。但它不起作用。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<script type="text/javascript">

<!--//onclick handler //-->
function gonum()
{
var input1=document.getElementById('a').value;
var operator=document.getElementById('op').value;
var input2=document.getElementById('b').value;


    if (operator=="+")
    {
        add(input1,input2);
    }
}


function add(input1,input2)
{
    alert(input1+input2);
}


</script>
</head>
<body>
<form>
<input type="text" name="a"/>
<input type="text" name="op"/>
<input type="text" name="b"/>
<input type="button" value="=" name="btn" onClick="gonum()" />
</form>
</body>
</html>
4

1 回答 1

5

我看到的一个明显问题是:

var input1=document.getElementById('a').value;
var operator=document.getElementById('op').value;
var input2=document.getElementById('b').value;

结合这个:

<input type="text" name="a"/>
<input type="text" name="op"/>
<input type="text" name="b"/>

请注意,您没有为输入元素分配任何 ID;但是,您的 JavaScript 正试图通过它们的(不存在的)id 来调用它们。

将您的 html 更改为此,您应该是金色的:

<input type="text" name="a" id="a"/>
<input type="text" name="op" id="op"/>
<input type="text" name="b" id="b"/>
于 2012-09-27T23:23:46.653 回答