如何在BMI计算器字段的旁边/下方而不是页面顶部添加错误消息?

凤凰城

所以我试图让错误消息发送到该字段,但我不知道我在做什么,对此我还很陌生,很抱歉打扰你们。

这是整个代码:

function computeBMI() {

  var height = 0;
  var weight = 0;
  height = Number(document.getElementById("height").value);
  weight = Number(document.getElementById("weight").value);
  if (height == 0 | height > 220) {
    document.getElementById('errorMsg').innerHTML = "Use Appropriate Height";
    return 0;
  }
  if (weight == 0 | weight < 20) {
    document.getElementById('errorMsg').innerHTML = "Use Appropriate Weight";
    return 0;
  }

  var BMI = weight / (height / 100 * height / 100);
  document.getElementById("output").innerText = Math.round(BMI * 100) / 100;
  var output = Math.round(BMI * 100) / 100;
  if (output < 18.5)
    document.getElementById("comment").innerText = "Underweight";
  else if (output >= 18.5 && output <= 25)
    document.getElementById("comment").innerText = "Normal";
  else if (output > 25)
    document.getElementById("comment").innerText = "Overweight";
}
<html>

<head>
  <title>BMI Calculator</title>
</head>

<body>
  <div id="errorMsg"></div>
  <h1>Body Mass Index Calculator</h1>
  <p>Enter your height: <input type="text" id="height" /></p> <span id="errorMsg"><
<p>Enter your weight: <input type="text" id="weight"/></p>

<input type="submit" value="computeBMI" onclick="computeBMI();">
<h1>Your BMI is: <span id="output">?</span></h1>

  <h2>This means you are: <span id="comment"> ?</span> </h2>
</body>

爱迪生

为此,您需要在每个输入旁边放置一个单独的错误消息区域,并且每个输入都需要一个唯一的ID-当前,您有两个元素的ID为“ errorMsg”,其中一个位于布局的错误位置。ID必须(根据定义)唯一地标识一个元素,因此很显然这是行不通的。当您在代码中引用“ errorMsg”时,JavaScript只会选择它找到的第一个,并假设您的意思是那个。它无法区分它们。

但是无论如何,您实际上都不需要编写自己的代码来进行验证。如果将字段放在表单中并处理表单的Submit事件,则可以在字段本身上使用HTML5验证规则来限制允许的输入。

这是一个演示:

注意addEventListener来处理表单的“ submit”事件并运行一些Javascript。还要注意的<form></form>标签圆的字段和按钮,最后在type="number"requiredminmax在输入字段本身的属性。

var form = document.getElementById("BMIForm");

form.addEventListener("submit", function(event) {
 event.preventDefault(); //stop a postback
 computeBMI();
});

function computeBMI() {

  var height = 0;
  var weight = 0;
  height = Number(document.getElementById("height").value);
  weight = Number(document.getElementById("weight").value);

  var BMI = weight / (height / 100 * height / 100);
  document.getElementById("output").innerText = Math.round(BMI * 100) / 100;
  var output = Math.round(BMI * 100) / 100;

  if (output < 18.5)
    document.getElementById("comment").innerText = "Underweight";
  else if (output >= 18.5 && output <= 25)
    document.getElementById("comment").innerText = "Normal";
  else if (output > 25)
    document.getElementById("comment").innerText = "Overweight";
}
<html>

<head>
  <title>BMI Calculator</title>
</head>

<body>
  <h1>Body Mass Index Calculator</h1>
  <form id="BMIForm">
  <p>Enter your height: <input type="number" required min="0" max="220" id="height" /></p>
  <p>Enter your weight: <input type="number" required min="0" max="20" id="weight"/></p>

<input type="submit" value="computeBMI">
</form>
<h1>Your BMI is: <span id="output">?</span></h1>

 <h2>This means you are: <span id="comment"> ?</span> </h2>
</body>

您可以在此处了解有关HTML表单验证的更多信息:https : //developer.mozilla.org/en-US/docs/Learn/Forms/Form_validation

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在错误栏旁边添加错误值?

来自分类Dev

BMI计算器错误?爪哇

来自分类Dev

在给出 BMI 值时,如何阻止我的 BMI 计算器添加不需要的“无”?

来自分类Dev

如何为 DateValidation 添加错误消息?

来自分类Dev

Android BMI计算器应用程序意图错误

来自分类Dev

Android BMI计算器应用程序意图错误

来自分类Dev

如何为表单中的未完成字段添加错误消息?

来自分类Dev

当用户输入错误时,如何在我的Python重量计算器中显示错误消息

来自分类Dev

如果条件如何如何在倍数内添加错误消息

来自分类Dev

如何在Zend Framework 2中向表单添加错误消息?

来自分类Dev

如何在Vue中使用HTML 5验证添加错误消息

来自分类Dev

如何在Zend Framework 2中向表单添加错误消息?

来自分类Dev

Magento向控制器添加错误消息

来自分类Dev

Magento向控制器添加错误消息

来自分类Dev

Bash Shell中的BMI计算器

来自分类Dev

使用虚拟属性时如何添加错误消息

来自分类Dev

Visual Studio代码扩展:如何在浏览器中向文件添加错误标记?

来自分类Dev

(Laravel)如何在自定义验证器中添加错误?

来自分类Dev

如何在添加新的自定义帖子和编辑自定义帖子时添加错误消息

来自分类Dev

在JavaScript中使用成绩计算器时如何显示错误消息?

来自分类Dev

创建BMI计算器时我的计算已关闭

来自分类Dev

如何在字段旁边显示验证错误?

来自分类Dev

如何在Rails模型中添加错误?

来自分类Dev

计算器正在添加数字而不是减去

来自分类Dev

如何在刀片文件的输入字段下方显示错误消息-Laravel

来自分类Dev

用户关闭Windows计算器时如何打印消息?

来自分类Dev

BMI计算器始终返回0。(Python)

来自分类Dev

需要帮助Vue-BMI计算器

来自分类Dev

C编程中的BMI计算器...无法运行?

Related 相关文章

  1. 1

    如何在错误栏旁边添加错误值?

  2. 2

    BMI计算器错误?爪哇

  3. 3

    在给出 BMI 值时,如何阻止我的 BMI 计算器添加不需要的“无”?

  4. 4

    如何为 DateValidation 添加错误消息?

  5. 5

    Android BMI计算器应用程序意图错误

  6. 6

    Android BMI计算器应用程序意图错误

  7. 7

    如何为表单中的未完成字段添加错误消息?

  8. 8

    当用户输入错误时,如何在我的Python重量计算器中显示错误消息

  9. 9

    如果条件如何如何在倍数内添加错误消息

  10. 10

    如何在Zend Framework 2中向表单添加错误消息?

  11. 11

    如何在Vue中使用HTML 5验证添加错误消息

  12. 12

    如何在Zend Framework 2中向表单添加错误消息?

  13. 13

    Magento向控制器添加错误消息

  14. 14

    Magento向控制器添加错误消息

  15. 15

    Bash Shell中的BMI计算器

  16. 16

    使用虚拟属性时如何添加错误消息

  17. 17

    Visual Studio代码扩展:如何在浏览器中向文件添加错误标记?

  18. 18

    (Laravel)如何在自定义验证器中添加错误?

  19. 19

    如何在添加新的自定义帖子和编辑自定义帖子时添加错误消息

  20. 20

    在JavaScript中使用成绩计算器时如何显示错误消息?

  21. 21

    创建BMI计算器时我的计算已关闭

  22. 22

    如何在字段旁边显示验证错误?

  23. 23

    如何在Rails模型中添加错误?

  24. 24

    计算器正在添加数字而不是减去

  25. 25

    如何在刀片文件的输入字段下方显示错误消息-Laravel

  26. 26

    用户关闭Windows计算器时如何打印消息?

  27. 27

    BMI计算器始终返回0。(Python)

  28. 28

    需要帮助Vue-BMI计算器

  29. 29

    C编程中的BMI计算器...无法运行?

热门标签

归档