2013-04-17 28 views
0

我想讓document.bmi.answer.value等於ans。但它沒有出現。有沒有人在我的代碼中看到任何錯誤?獲取Java變量到參考表單輸入

這是在我的腦海:

<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> 

這是在我的身上:

<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> 
+0

你說的是JavaScript而不是Java t他是服務器端編程語言。 – adarshr

+0

看起來''var'=(ww /(hh * hh))* 703'末尾有一個額外的''''' –

+0

謝謝!我解決了它,但它仍然沒有解決我的問題,我的答案沒有出現在BMI框中。 – user2291730

回答

1

有一個在你的JavaScript是防止它執行(這裏is a demo)的錯誤

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; 
} 

刪除多餘的)和你應該是好現在

,你已經更新了你的代碼修復你引入了一個新bug的括號,你想要的命令(假設你想使用name屬性)是.getElementsByName()(而不是.getElementByName()

+0

完美!非常感謝!但是,錯誤是什麼? – user2291730

+0

好了!感謝您的幫助!哈哈,我看過這麼簡單的錯誤。 – user2291730

+0

你的第一份草案只有額外的'''',否則它是完美的(你應該使用Firefox + Firebug或Chrome開發JavaScript,它會告訴你什麼時候出現語法錯誤,以及它們究竟是什麼) –

0

使用

document.getElementByName('answer').value = ans; 
+0

我試過了,答案仍然沒有顯示在BMI框中 – user2291730

+0

該函數被稱爲'getElementsByName()',因爲它可以返回不止一個:https://developer.mozilla.org/en-US/docs/DOM/document.getElementsByName –

0

您需要使用document.getElementById()得到一個HTML元素的值,更改此:

document.bmi.answer.value = ans; 

收件人:

document.getElementById('answer').value = ans; 

這應該起作用。

+0

感謝您的快速響應。我改變了它,但答案仍然沒有顯示在BMI輸入框中。 – user2291730

+0

@ user2291730,更新你的代碼.. –

+0

好的只是更新了它 – user2291730