2012-09-20 36 views
1

我的代碼:在所有變量前「編輯,添加‘VAR’,謝謝,我試圖消除<形式>但是當我這樣做是不會起作用的Javascript計算器結果閃爍

<head> 
<title>Calculator</title> 
<script language="javascript"> 
function calculate() 
{ 
var v=parseInt(document.forms[0].txt1st.value); 
var w=parseInt(document.forms[0].txt2nd.value); 
var x=parseInt(document.forms[0].txt3rd.value); 
var y=703; 
var z = (v/w/x*y).toFixed(3); 
document.getElementById("display").innerHTML=z; 
} 

</script> 
</head> 
<body> 
<form name="cal" method="post" action=""> 
<table width="100%" border="0" cellspacing="0" cellpadding="0"> 
<tr> 
<td><input name="txt1st" type="text" id="txt1st"></td> 
<td><input name="txt2nd" type="text" id="txt2nd"></td> 
<td><input name="txt3rd" type="text" id="txt3rd"></td> 
<td>x 703</td> 
</tr> 
</table> 
<button onclick="calculate()">Calculate</button> 
<div id="display"></div> 
</body> 

當。我點擊了「計算」按鈕,結果顯示在div中,但只有一秒鐘,然後消失。請記住,我是非常新的JavaScript,任何幫助表示讚賞,謝謝

+0

你應該聲明變量爲「var」btw – JonWells

+0

沒有理由在表單中聲明你的代碼,並且確實沒有必要提交這個表單。刪除表單標籤 –

+1

就像一個註釋:如果你只是想保留整數,你應該只使用'parseInt'。在這種情況下,你應該習慣使用可選的'radix'參數。 'var v = parseInt(document.forms [0] .txt1st.value,10);'如果你想允許浮點數,那麼一元加+就是你所需要的。 'var v = + document.forms [0] .txt1st.value' –

回答

3

您提交的表單和所以頁面清爽。

A dd return false;到您的calculate函數的末尾以防止表單提交。