简单的BMI计算,有两个额外的字段

时间:2014-08-25 05:16:49

标签: javascript html

所以我有以下表格来计算用户BMI并根据结果将用户重定向到某个页面:

HTML

<form name="bmiForm">
   <p>Your Weight(kg): <input type="text" name="weight"></p>
   <p>Your Height(cm): <input type="text" name="height"></p>

   <input type="button" value="Calculate BMI" onClick="calculateBmi()"><br />

   <p>Your BMI: <input type="text" name="bmi" size="10"></p>
</form>

的JavaScript

<script>
    function calculateBmi() {

    var weight = document.bmiForm.weight.value
    var height = document.bmiForm.height.value

    if(weight > 0 && height > 0) {
       var finalBmi = weight/(height/100*height/100)
       document.bmiForm.bmi.value = finalBmi

       if(finalBmi < 30){
          window.location.href = 'http://localhost:8888/?page_id=146';
       }

       if(finalBmi > 30){
          window.location.href = 'http://localhost:8888/?page_id=149';
       }
     }
    }
</script>

它绝对是一种享受。但是,我现在还需要两个输入。

  1. 你尝试过饮食和运动吗?
  2. 您患过糖尿病吗?
  3. 所以我显然需要一个选择选项&#34;是&#34;和&#34;不&#34;对于if语句中的每个和添加的功能。

    我尝试添加:

    var diabetes = document.bmiForm.diabetes.value
    

    到脚本然后if语句中的另一个条件,但没有运气。

    我可以从哪里出发?有关完成上述任何建议。

    非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

对于复选框,你必须这样做:

 if (document.getElementById('diabetes').checked) {    //here 'diabetes' is id of checkbox
        alert("checked");
    }
 else { alert("not checked") }

和下拉菜单执行:

var e = document.getElementById("diabetes");
var selectvalue= e.options[e.selectedIndex].value;  //you can get selected value with this
var selecttext= e.options[e.selectedIndex].text;    //you can get selected text with this