Javascript计算不返回文本框

时间:2013-02-15 19:37:42

标签: javascript

我正在做一个简单的表格,用户输入它们的长度,宽度,高度和数量,然后计算立方英尺,答案显示在表格中。所以我试图在这里做,但我不知道为什么没有显示答案。 ID都是正确的。我已经尝试过使用ParseFloat并在计算中为每个变量加上括号,但似乎没有做任何事情。问题是什么?

感谢您一看。

<HTML>
<HEAD>
<TITLE>Cubic Feet</TITLE>
<SCRIPT LANGUAGE="JavaScript">


function Calculate()
{
var qty1 = document.getElementById('q1').value;
var len1 = document.getElementById('l1').value;
var width1 = document.getElementById('w1').value;
var height1 = doument.getElementById('h1').value;
var cube1 = qty1*(len1*width1*height1);

form.cuft1.value = cube1.tofixed(2);

}

function ClearForm(form)
{
form.q1.value = "";
form.l1.value = "";
form.w1.value = "";
form.h1.value = "";
form.cuft1.value = "";
}

// end of JavaScript functions -->
</SCRIPT>
</HEAD>

<BODY>

<FORM NAME="Calculator" METHOD="post">


<P><INPUT TYPE="button" VALUE="Calculate" name="AddButton" onClick="Calculate(this.form.q1.value, this.form.h1.value, this.form.w1.value, this.form.l1.value, this.form)">
<INPUT TYPE="button" VALUE="Clear" name="ClearButton" onClick="ClearForm(this.form)">

<p>
<table>
<tr>
<td> Container 1 Qty <input type="TEXT" id="q1" value=""></td>
<td> Length <input type="TEXT" id="l1" value=""></td>
<td> Width <input type="TEXT" id="w1" value=""></td>
<td> Height <input type="TEXT" id="h1" value=""></td>
<td> Cu.Ft. <input type="TEXT" id="cuft1" value=""></td>
</tr>
</table>
</FORM>
</BODY>
</HTML>

3 个答案:

答案 0 :(得分:1)

this.form.q1.value

查找名称 q1的输入。

请改用:

document.getElementById('q1').value

您在其他方面遇到同样的错误。最好始终使用id。

答案 1 :(得分:1)

你有一系列愚蠢的错误:

  1. documentgetElementById('w1').value;应为document.getElementById('w1').value;

  2. doument.getElementById('h1').value;应为document.getElementById('h1').value;

  3. form未定义。试试var form = document.forms[0]

  4. cube1.tofixed(2);应为cube1.toFixed(2);

  5. 打开浏览器的开发者控制台可以轻松捕获所有这些错误......

    已修复,工作版本:http://codepen.io/anon/pen/bzcdx

答案 2 :(得分:0)

尝试

document.getElementById("cuft1").value = cube1.tofixed(2);