嵌套的if-JavaScript

嵌套的if-JavaScript,javascript,html,nested,innerhtml,Javascript,Html,Nested,Innerhtml,我想让代码读取Bz的输入值,并给出一个问候语以及等式中的答案。这就是我目前所拥有的。这不是在计算后打招呼。帮忙 <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"

我想让代码读取Bz的输入值,并给出一个问候语以及等式中的答案。这就是我目前所拥有的。这不是在计算后打招呼。帮忙

  <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>

3.21+(9.63 *) =
新台币0元
函数myMath()
{
var-Bz;
问候语;
如果(Bz>-50)
{
如果(Bz>-30)
{
问候语=“无”;
}
其他的
{
问候语=“小”;
}
其他的
{ 
如果(Bz>-80)
{
问候语=“温和”;
}
其他的
{
问候语=“大”;
}
}
}
document.getElementById(“mys1”).innerHTML=问候语;
};  

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

另外,您编写
if
s语句的方式非常糟糕。这样会更好:

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

请注意,我写这篇文章是想猜测你到底想要什么问候语。请注意,如果满足第一个条件,其他条件甚至根本不会被检查。

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

你应该做的是:

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

JS中没有
else..else
构造,它应该是
if..else..if..else
..@Teemu有两个if语句。缩进全搞乱了。您有一个语法错误,缺少第一个(外部)if块的结束符
}
。发布前请检查错误控制台,并修复缩进。@BilltheLizard是的,但代码中有两个连续的
else
块。@Teemu啊,是的,你是对的。我想他也少了一个
}
。我忘了等式后面的一行代码:
好的,那么问题是你的
if
是错的。如果你告诉我你想要什么样的问候,那么我会为你写ifs。另外,您的控制台中是否有任何错误?如果有,你应该将它们添加到你的帖子中。在我将其从最初的格式中删除后,没有错误显示。对于Bz>-80,我希望它能迎接大的挑战。对于Bz>-50,轻度。Bz>-30,小的。假设它分析输入并确定它最适合的范围。@maebee\u好的,我已经修复了答案中的代码。请检查一下。如果该值是任何大于-30的值,则表示问候语的值很小。如果介于-50和-30之间,则该值为中间值。如果介于-80和-50之间,则该值较大。如果它小于-80(因为它不适合任何其他情况),那么问候语是“无”。我希望这对您有所帮助,如果您仍然无法做到,请告诉我。无论数字是多少,唯一显示的是“无”。$是jquery。我的剧本里没有这个。没有jquery还有其他方法吗?那么,出于某种原因不能使用jquery吗?您可以找到如何在没有JQuery的情况下以所需的输入为目标。如果您可以为它分配一个ID,那么它就是
var Bz=document.getElementById(“您的输入ID”).value明白了!谢谢你的帮助。