2017-04-13 13 views
0

これは私の論文の始まりです。 何が間違っていて、なぜですか? 何か変わるつもりなら簡単にしてください。 「:;詳細を追加してくださいあなたのポストは、ほとんどのコードであるように見えます ので、私はより多くのテキストを追加する必要がある」 シンプルなBMR計算機HTML JavaScript

はこれを無視します まあ、私の計算結果を表示しません...

<!DOCTYPE html> 
 

 
<html> 
 

 
<head> 
 

 
<script> 
 

 
var bmr; 
 
var age = document.getElementById("age").value; 
 
var gender = document.getElementById("gender").value; 
 
var height = document.getElementById("height").value; 
 
var weigth = document.getElementById("weigth").value; 
 

 
if (gender == "masc") { 
 
bmr = 66.5 + (13.75 * weigth) + (5.003 * height) – (6.755 * age) 
 
} 
 
else { 
 
bmr = 655.1 + (9.563 * weigth) + (1.850 * height) – (4.676 * age) 
 
} 
 

 
</script> 
 

 
</head> 
 

 
<body> 
 

 
<form action="#"> 
 
    <input type="radio" id="gender" value="masc" checked> Male<br> 
 
    <input type="radio" id="gender" value="fem"> Female<br> 
 
    Age:<br> 
 
    <input type="number" id="age" value="20"><br> 
 
    Height:<br> 
 
    <input type="number" id="height" value="180"><br> 
 
    Weight:<br> 
 
    <input type="number" id="weigth" value="80"><br> 
 
</form> 
 

 
<button type="button" 
 
onclick="document.getElementById('lblResult').innerHTML = bmr"> 
 
Result</button> 
 

 
<p id="lblResult">BMR</p> 
 

 
</body> 
 

 
</html>

+0

' - (6.755 * age)'と ' - (4.676 * age) 'で使用した' -'文字はマイナス記号ではなく、ダッシュ文字のようなものですなぜ "Invalid ... token"というエラーが出るのですか?それらを削除して、キーボードの ' - 'キーでもう一度タイプしてください。私はこれを単純な誤字によって引き起こされたと判断しています。 – nnnnnn

+0

(PS * next *問題はブラウザがあなたの要素を解析する前に実行される ''のスクリプトで 'document.getElementById()'を呼び出すことになりますが、本当にあなたはそのコードを内部に置く必要がありますボタンクリックイベントから呼び出して、計算に現在入力されている値が使用される関数) – nnnnnn

+0

ありがとうnnnnnnとAntonio。 –

答えて

0

コメントがあなたの代わりに作業することを妨げるあなたのコード内のマイナス記号のダッシュを持って言及した同様。

bmr = 66.5 + (13.75 * weigth) + (5.003 * height) here-> - (6.755 * age)

また、あなたはそれが仕事をdosen'tので、彼らが読み込まれていない要素を選択した場合だけで、あなたのコード内のbeacause終了</body>タグの前に、htmlファイルの末尾にスクリプトを移動する必要があります。

また、スクリプト内でイベントを作成すると、onclickイベントが意図したとおりに機能しなくなります。

document.getElementsByTagName("button")[0].addEventListener("click", 
function() { 
    calc(); 
    document.getElementById('lblResult').innerHTML = bmr; 

}) 

それはあなたが同じ値を取得する結果をクリックしたときに立って、あなたが、再び値を計算できるように、また、関数内で計算コードを移動sould。

ここには作業Exampleがあります。

関連する問題