Advertisement
Guest User

Untitled

a guest
May 25th, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.25 KB | None | 0 0
  1. ## BMI Calculator with Bootstrap 4 + Js
  2. __HTML + Bootstrap@v4__
  3.  
  4. ```html
  5.  
  6. <section class="align-items-stretch bg-secondary "><div class="container d-flex flex-column "><div class="row my-4 py-4 "><div class="col-12 col-lg-6 col-xl-4">
  7. <span class="text-primary f-bold mb-4 d-block">Calculate Your Body Mass Index</span>
  8. <label for="height_bmi">Height(cm)</label>
  9. <input type="number" name="height_bmi" class="d-block p-2 w-100" id="height_bmi" placeholder="height(cm)">
  10. <label for="weight_bmi" class="d-block mt-3">weight(kg)</label>
  11. <input type="number" name="weight_bmi" id="weight_bmi" class="d-block p-2 w-100" placeholder="weight(kg)">
  12. <input type="submit" class="btn-primary btn-tm mt-4 w-100" id="btn_calc_bmi" value="Calc BMI">
  13. <span id="result_bmi" class="btn btn-tm mt-4 w-100 btn-tm-none">19.0</span></div><div class="col-12 col-lg-6 offset-xl-2"><table class="table" align="center" id="tbl_bmi"><tbody><tr><td class="cinfoHd">Category</td><td class="cinfoHdL">BMI range - kg/m<sup>2</sup></td></tr><tr><td>Severe Thinness</td><td class="cinfoBodL">< 16</td></tr><tr><td>Moderate Thinness</td><td class="cinfoBodL">16 - 17</td></tr><tr><td>Mild Thinness</td><td class="cinfoBodL">17 - 18.5</td></tr><tr class="bg-white"><td>Normal</td><td class="cinfoBodL">18.5 - 25</td></tr><tr><td>Overweight</td><td class="cinfoBodL">25 - 30</td></tr><tr><td>Obese Class I</td><td class="cinfoBodL">30 - 35</td></tr><tr><td>Obese Class II</td><td class="cinfoBodL">35 - 40</td></tr><tr><td>Obese Class III</td><td class="cinfoBodL">> 40</td></tr></tbody></table></div></div></div></section>
  14.  
  15. <script>document.addEventListener("DOMContentLoaded", function() {
  16. let btn_calc = document.querySelector('#btn_calc_bmi');
  17. btn_calc.addEventListener('click', () => {
  18.  
  19. let height_bmi_cm = parseInt(document.getElementById('height_bmi').value);
  20. let weight_bmi =parseFloat( document.getElementById('weight_bmi').value);
  21.  
  22. let height_bmi_m = height_bmi_cm / 100;
  23. const BMI = (weight_bmi/Math.pow(height_bmi_m,2));
  24. let res_bmi=document.getElementById('result_bmi')
  25. let fix_bmi=BMI.toFixed(1);
  26. res_bmi.innerHTML =fix_bmi ;
  27. res_bmi.classList.add('btn-tm-none');
  28. let tbl = document.querySelector('#tbl_bmi');
  29.  
  30. for(let i=0;i<tbl.rows.length;i++){
  31. if( tbl.rows[i].classList.contains('bg-white')){
  32. tbl.rows[i].classList.remove('bg-white')
  33. }
  34. }
  35.  
  36. switch(true){
  37. case (fix_bmi < 16):
  38. tbl.rows[1].classList.add('bg-white');
  39. break;
  40.  
  41. case (16 <= fix_bmi && fix_bmi < 17):
  42. tbl.rows[2].classList.add('bg-white');
  43. break;
  44.  
  45. case (17 <= fix_bmi && fix_bmi < 18.5):
  46. tbl.rows[3].classList.add('bg-white');
  47. break;
  48.  
  49. case (18.5 <= fix_bmi && fix_bmi < 25):
  50. tbl.rows[4].classList.add('bg-white');
  51. break;
  52.  
  53. case (25 <= fix_bmi && fix_bmi < 30):
  54. tbl.rows[5].classList.add('bg-white');
  55. break;
  56.  
  57. case (30 <= fix_bmi && fix_bmi < 35):
  58. tbl.rows[6].classList.add('bg-white');
  59. break;
  60.  
  61. case (35 <= fix_bmi && fix_bmi < 40):
  62. tbl.rows[7].classList.add('bg-white');
  63. break;
  64.  
  65. case ( fix_bmi >= 40):
  66. tbl.rows[8].classList.add('bg-white');
  67. break;
  68. }
  69.  
  70. });
  71.  
  72.  
  73. });</script>
  74. ```
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement