嵌套如果 - JavaScript

Nested if - JavaScript

我希望代码读取 Bz 的输入值并给出问候语以及方程式的答案。这就是我到目前为止所拥有的。它不会在计算后给出 'greeting' 。帮忙?

  <html>
  <body>

<form id="function" onsubmit="return false" oninput="o.value = 3.21 + (9.63 * parseInt(Bz.valueAsNumber))">
    3.21+(9.63 *<input name="Bz" type="number" step="any">) =
   <output name="o" for="intial set Bz">0</output>&nbsp;nT

</form>

<div id="mys1"></div>

<script language="JavaScript">   
 function myMath() 
 {
    var Bz;
    var greeting; 
    if(Bz>-50)
    {
         if (Bz>-30)
         {
               greeting = "None"; 
         }
         else  
         {
               greeting = "Small ";
         }
         else 
         { 
               if (Bz> -80) 
               {
                     greeting = "Mild ";
               }
               else 
               {
                     greeting = "Large ";
               }
          }
     }
 document.getElementById("mys1").innerHTML= greeting;
 };  
</script>

</body>
</html>

您从哪里调用函数 myMath()?我猜它没有被解雇。

此外,您写 if 语句的方式非常难看。这样就更好了:

if(Bz>-30)
{
    greeting = "Small";
}
else if(Bz>-50)
{
    greeting = "Mid ";
}
else if(Bz>-80)
{
    greeting = "Large";
}
else
{
    greeting = "None";
}

请注意,我写这篇文章是为了猜测您真正想要的问候语。请注意,如果满足第一个条件,则根本不会检查其他条件。

我发现了你的问题。未加载 Bz 值。设置 input name 属性不会将值存储到变量中。该属性用于表单提交。

你应该做的是:

function myMath() 
 {
    var Bz = $("input[name='Bz']").val();
    ...
    ...
    ...
 }