javascript - 如何使用 jQuery 将数字输入存储到变量中并执行计算以再次更新数字输入?

标签 javascript jquery html

我正在使用 HTML 和 jQuery 制作 BMI 计算器。

<form id="bmicalc">
    <fieldset>
        <legend>BMI Calculator:</legend>
        <p>
            <label>Height:
                <input type="number" id="height1" min="3" max="7">ft
                <input type="number" id="height2" min="0" max="11">in</label>
        </p>
        <p>
            <label>Weight:
                <input type="number" id="weight" min="1" max="1400">lb</label>
        </p>
        <p>
            <label>BMI:
                <input id="bmi" type="number" min="1" max="200">
            </label>
        </p>
        <p>
            <input type="button" id="tehbaton" value="Check your BMI">
        </p>
    </fieldset>
</form>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10/jquery.min.js">
var height = $("#height1").val()*12 + $("#height2").val(); //Height in Inches
var weight = $("#weight").val();
$("#tehbaton").click(function(){
    $("#bmi").val(703*weight/(height^2));
});
</script>

这是 fiddle :http://jsfiddle.net/uzD9C/

我最初希望在 keyup 上执行计算,但我认为我不知道如何做到这一点。因此,我现在保持简单,只需在单击提交按钮后更新第三个输入字段即可。

但是现在,单击该按钮不会执行任何操作。

BMI的计算公式为: BMI =(体重(磅)/(高度(英寸)x 高度(英寸))x 703

最佳答案

试试这个:

$("#tehbaton").click(function () {
    if($("#height1").val() && $("#height2").val() && $("#weight").val()){
        var height = Number($("height1").val()) * 12 + Number($("height2").val());
        var weight = $("#weight").val();
        $("#bmi").val((703 * weight) / Math.pow(height,2));
    }
});

这里是Fiddle

关于javascript - 如何使用 jQuery 将数字输入存储到变量中并执行计算以再次更新数字输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20649683/

相关文章:

javascript - 是否可以在关闭 body 标签之前关闭 div 标签?

javascript - 在 JavaScript 中检测相对于主页按钮的 iOS 方向?

jquery - 仅在最后一个类上运行函数

html - 如何对齐我的导航栏,使其永久位于我的白框中间(没有填充等)?

javascript - 表单提交后隐藏表格内的按钮?

javascript - Uint8Array 到 Javascript 中的字符串

javascript - 我多次从随机数组中得到 undefined

javascript - 使文本淡入并保持可见,直到鼠标离开容器

jquery - 如何突出显示点击的链接?

javascript - 在 Rails 中显示 range_field 值