Reputation: 1
I am trying to write an html code to add, subtract, divide or multiply two or more numbers, but I am having difficulties... (I tried adding a bit of CSS just to make it look good, but I am more concerned about the code running first). I am also using Javascript. What am I doing wrong please?
<html>
<head>
<body bgcolor="FFFCC">
<table border="0" cellpadding="0"
cellspacing="1" sytyle ="border-collapse. collapse"
bordercolor="#1111" width ="50%">
<hi><p align="center">CALCULATOR</p></hi><br>
<script language= "javascript">
function ADD()
{
var first=parsefloat(txtNumber1.value);
var second=parsefloat(txtNumber2.value);
var Ans =first+second;
txtAnswer.value=Ans;
}
function MINUS()
{
var first=parsefloat(txtNumber1.value);
var second=parsefloat(txtNumber2.value);
var Ans =first-second;
txtAnswer.value=Ans;
function DIVIDE()
{
var first=parsefloat(txtNumber1.value);
var second=parsefloat(txtNumber2.value);
var Ans =first/second;
txtAnswer.value=Ans;
}
function MULTIPLY()
{
var first=parsefloat(txtNumber1.value);
var second=parsefloat(txtNumber2.value);
var Ans =first*second;
txtAnswer.value=Ans;
}
function MODULO()
{
var first=parsefloat(txtNumber1.value);
var second=parsefloat(txtNumber2.value);
var Ans =first%second;
txtAnswer.value=Ans;
}
</script>
</head>
<input type ="text" name="txtNumber1"/><br>
<input type ="text" name="txtNumber2"/><br>
<input type ="button" name="butAnswer"
value="+" onclick="ADD()"/>
<input type ="button" name="butAnswer"
value="-" onclick="MINUS()"/>
<input type ="button" name="butAnswer"
value="/" onclick="DIVIDE()"/>
<input type ="button" name="butAnswer"
value="*" onclick="MULTIPLY()"/>
<input type ="button" name="butAnswer"
value="%" onclick="MODULO()"/><br>
<input type ="text" name="txtAnswer"/>
</table>
</body>
</html>
Upvotes: 0
Views: 135
Reputation: 318
<html>
<head>
</head>
<body bgcolor="FFFCC">
<table width="50%" align="center">
<tr><td colspan="2"><hi><p>CALCULATOR</p></hi></td></tr>
<tr><td><input type ="text" id="txtNumber1" placeholder="Enter first number"/><input type ="text" id="txtNumber2" placeholder="Enter second number"/> <input type ="text" id="txtAnswer"/></td>
<tr><td><input type ="button" name="butAnswer"
value="+" onclick="ADD()"/>
<input type ="button" name="butAnswer"
value="-" onclick="MINUS()"/>
<input type ="button" name="butAnswer"
value="/" onclick="DIVIDE()"/>
<input type ="button" name="butAnswer"
value="*" onclick="MULTIPLY()"/>
<input type ="button" name="butAnswer"
value="%" onclick="MODULO()"/></td></tr>
<tr>
</table>
<script language= "javascript">
var answer=document.getElementById("txtAnswer")
function ADD()
{
var number1=document.getElementById("txtNumber1")
var number2=document.getElementById("txtNumber2")
number1=parseFloat(number1.value)
number2=parseFloat(number2.value)
var Ans =number1+number2;
answer.value=Ans;
}
function MINUS()
{
var number1=document.getElementById("txtNumber1")
var number2=document.getElementById("txtNumber2")
number1=parseFloat(number1.value)
number2=parseFloat(number2.value)
var Ans =number1-number2;
answer.value=Ans;
}
function DIVIDE()
{
var number1=document.getElementById("txtNumber1")
var number2=document.getElementById("txtNumber2")
number1=parseFloat(number1.value)
number2=parseFloat(number2.value)
var Ans =number1/number2;
answer.value=Ans;
}
function MULTIPLY()
{
var number1=document.getElementById("txtNumber1")
var number2=document.getElementById("txtNumber2")
number1=parseFloat(number1.value)
number2=parseFloat(number2.value)
var Ans =number1*number2;
answer.value=Ans;
}
function MODULO()
{
var number1=document.getElementById("txtNumber1")
var number2=document.getElementById("txtNumber2")
number1=parseFloat(number1.value)
number2=parseFloat(number2.value)
var Ans =number1%number2;
answer.value=Ans;
}
</script>
</body>
</html>
Upvotes: 1
Reputation: 573
try correcting these lines :
var first=parsefloat(document.getElementsByName("txtNumber1")[0].value);
var second=parsefloat(document.getElementsByName("txtNumber2")[0].value);
document.getElementsByName("txtAnswer")[0].value=Ans;
Upvotes: 1
Reputation: 2406
Your are not referencing your input elements!
In this example
var first=parsefloat(txtNumber1.value);
txtNumber1 is undefined
This will work
var first=parsefloat(document.getElementsByName(txtNumber1)[0].value);
Upvotes: 1