Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从<;表格>;_Javascript_Html - Fatal编程技术网

Javascript 从<;表格>;

Javascript 从<;表格>;,javascript,html,Javascript,Html,这是一个计算理想重量的简单网页。我的问题是,当我输入详细信息并为男性或女性选择单选按钮时,第一个if条件仅起作用,而else if条件不起作用。选择其中一个是给我第一个条件答案 错误是什么?我从表单中获取高度值没有问题,但是性别值给出了这个错误 函数calculatewight(){ var men=22*Math.pow(document.getElementById('height')。值,2); var=22*Math.pow(document.getElementById('heig

这是一个计算理想重量的简单网页。我的问题是,当我输入详细信息并为男性或女性选择单选按钮时,第一个if条件仅起作用,而else if条件不起作用。选择其中一个是给我第一个条件答案

错误是什么?我从表单中获取高度值没有问题,但是性别值给出了这个错误

函数calculatewight(){
var men=22*Math.pow(document.getElementById('height')。值,2);
var=22*Math.pow(document.getElementById('height')。值-0.1,2);
if(document.getElementById('genderFemale')。value==“female”){
警惕(“你(女性)的理想体重是:“+女性”;
}else if(document.getElementById('genderMale')。value==“male”){
警惕(“你(男人)的理想体重是:“+男人”;
}
}

  • 输入以下要求: 年龄:

    高度: 单位。。。 英寸 英尺 厘米 米

    性别: 男性 女性 其他


    要获得预期结果,请使用document.getElementById('genderFemale')。选中 document.getElementById('genderMale')。选中了,因为这些ID的值始终分别为女性和男性

    JS:

    function calculateWeight()
    {
    
    var men = 22*Math.pow(document.getElementById('height').value,2);
    var women = 22*Math.pow(document.getElementById('height').value - 0.1,2);
    
        if (document.getElementById('genderFemale').checked) 
        {
            console.log(document.getElementById('genderFemale').value)
          alert("The Ideal weight for you(women) is : " +women);
        } 
          else if (document.getElementById('genderMale').checked)
        { 
          console.log(document.getElementById('genderMale').value)
          alert("The Ideal weight for you (men) is : " +men);
        }
        }
    
    HTML::对于每个单选按钮,添加onchange函数以调用calculatewight()函数

    Height:<input style="margin-left: 30px; padding: 0; width: 102px" list="units" type="number" step="any"  name="Height" id="height">
    
    Gender:
    <input type="radio" name="gender" id="genderMale" value="male" checked style="margin-left: 20px; padding: 0;" onchange="calculateWeight()"> Male
    
    <input type="radio" name="gender" id="genderFemale" value="female" onchange="calculateWeight()"> Female
    
    <input type="radio" name="gender" value="other" onchange="calculateWeight()"> Other
    
    高度:
    性别:
    男性
    女性
    其他
    

    问题在于,您从收音机盒中获取的是一个静态值。如果查看在If语句中获取的信息,就会发现值总是相同的

    <input type="radio" name="gender" id="genderFemale" value="female">
    
    您可以这样做:

    Height:<input style="margin-left: 30px; padding: 0; width: 102px" list="units" type="number" step="any"  name="Height" id="height">
    <div id="myForm">
    Gender:
    <input type="radio" name="gender" id="genderMale" value="male" checked style="margin-left: 20px; padding: 0;"> Male
    <input type="radio" name="gender" id="genderFemale" value="female"> Female
    <input type="radio" name="gender" value="other"> Other
    </div>
    
    <input type="submit" id="submit">
    
    var value = document.querySelector('[name=gender]:checked').value;
    if (value === "female") {
      alert("The Ideal weight for you(women) is : " +women);
    } else if (value == "male") { 
      alert("The Ideal weight for you (men) is : " +men);
    }
    

    除非你非常需要感谢,否则就做一个

    。我只是浪费了我的时间,只花了2分钟就从你那里得到了答案。谢谢@touqeer,很高兴我的答案帮助了你,如果有助于解决你的问题,你可以标记为已回答:)。。更新代码笔-
    document.getElementById("submit").onclick = function(){
    
    var men = 22*Math.pow(document.getElementById('height').value,2);
    var women = 22*Math.pow(document.getElementById('height').value - 0.1,2);
    var rates = document.getElementById('myForm').value;
    
        if (document.getElementById('genderFemale').checked) 
        {
          alert("The Ideal weight for you(women) is : " +women);
        } 
          else if (document.getElementById('genderMale').checked)
        { 
          alert("The Ideal weight for you (men) is : " +men);
        }
     }
    
    var value = document.querySelector('[name=gender]:checked').value;
    if (value === "female") {
      alert("The Ideal weight for you(women) is : " +women);
    } else if (value == "male") { 
      alert("The Ideal weight for you (men) is : " +men);
    }