Javascript 获取Java变量以引用表单输入

Javascript 获取Java变量以引用表单输入,javascript,forms,Javascript,Forms,我正在尝试将document.bmi.answer.value设置为等于ans,但它没有显示。有人看到我的代码中有错误吗 这是在我的脑海里: <script type="text/javascript"> function calcbmi() { var hh = parseFloat(document.getElementByName('height').value); var ww = parseFloat(document.getElementByName('weight').

我正在尝试将document.bmi.answer.value设置为等于ans,但它没有显示。有人看到我的代码中有错误吗

这是在我的脑海里:

<script type="text/javascript">
function calcbmi()
{
var hh = parseFloat(document.getElementByName('height').value);
var ww = parseFloat(document.getElementByName('weight').value);
var ans = (( ww / ( hh * hh ))*703);
document.getElementByName('answer').value = ans;
}
</script>

函数calcbmi()
{
var hh=parseFloat(document.getElementByName('height').value);
var ww=parseFloat(document.getElementByName('weight').value);
var ans=((ww/(hh*hh))*703);
document.getElementByName('answer')。value=ans;
}
这就是我的身体:

<form name="bmi">
<p> Height <input type="text" name="height"></p>
<p> Weight <input type="text" name="weight"></p>
<p> BMI <input type="text" name="answer" value=""></p>
<input type="button" value="Calculate" onclick="calcbmi();">
</form>

高度

重量

体重指数

谢谢你的帮助

这是我的全部代码,因为我的错误不在javascript或表单中。尽管如此,我一辈子都看不到这一点

<!DOCTYPE HTML>
<html>
<head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
function calcbmi()
{
var hh = parseFloat(document.getElementByName('height').value);
var ww = parseFloat(document.getElementByName('weight').value);
var ans = (( ww / ( hh * hh ))*703);
document.getElementByName('answer').value = ans;
}
</script>
</head>
<body>
<h1>Body Mass Index</h1>
<form name="bmi">
<p> Height <input type="text" name="height"></p>
<p> Weight <input type="text" name="weight"></p>
<p> BMI <input type="text" name="answer" value=""></p>
<input type="button" value="Calculate" onclick="calcbmi();">
</form>
</body>
</html>

函数calcbmi()
{
var hh=parseFloat(document.getElementByName('height').value);
var ww=parseFloat(document.getElementByName('weight').value);
var ans=((ww/(hh*hh))*703);
document.getElementByName('answer')。value=ans;
}
体质指数
高度

重量

体重指数

使用


您需要使用
document.getElementById()
获取HTML元素的值,请更改以下内容:

document.bmi.answer.value = ans;
致:


这应该是可行的。

您的JavaScript中有一个bug阻止它执行(此处)

去掉多余的
,你应该很好


现在,您已经更新了代码以修复引入了新错误的括号,您想要的命令(假设您想要使用name属性)是
.getElementsByName()
(而不是
.getElementByName()

您所说的是JavaScript,不是Java服务器端编程语言。看起来在
var ans=(ww/(hh*hh))*703)的末尾有一个额外的
谢谢!我修复了它,但它仍然没有解决我的答案没有显示在BMI框中的所有问题。现在,您的修复引入了一个新的错误(我已在我的答案中解决了这个问题),感谢您的快速响应。我更改了它,但答案仍然没有显示在BMI输入框中。@user2291730,它不是
getElementByName
它应该是
getElementById()
查看我的答案:)您没有
id
属性来添加
answer
。我尝试了这个方法,但答案仍然没有显示在BMI框中。函数名为
getElementsByName()
,因为它可以返回多个:完美!非常感谢你!但是什么是错误?好的,知道了!谢谢你的帮助!哈哈,这么简单的错误我都看过头了。你的初稿只是多了一个
,否则就太完美了(你应该使用Firefox+Firebug或Chrome来开发JavaScript,它会告诉你什么时候有语法错误,它们到底是什么)
document.bmi.answer.value = ans;
document.getElementById('answer').value = ans;
function calcbmi() {
    var hh = parseFloat(document.bmi.height.value);
    var ww = parseFloat(document.bmi.weight.value);
    var ans = (ww / (hh * hh)) * 703;
    document.bmi.answer.value = ans;
}