将两个输入值相乘,并使用jQuery将答案显示为页面上的段落

时间:2014-01-16 22:22:57

标签: javascript jquery html

尝试从文本框中获取两个输入值,单击一个按钮,然后将答案作为文本

返回

两个输入名称是“weight”和“reps”。我想要它所以一旦你点击它按钮它将进行计算并被添加到div“结果”

HTML:

<div>
  Weight lifted: <input name="weight" type="text" value="?">
</div>
<div>
  Reps attained: <input name="reps" type="text" value="?">
</div>
<button>Calculate One-Rep Max</button>

<div id="result"></div>

我现在拥有的jquery:

$(document).ready(function() {
  $('button').click(function() {
    var weight = $('input[name=weight]').val();
    var reps = $('input[name=weight]').val();
    var max = $('input[name=weight]').val() * $('input[name=reps]').val() * 0.0333 +   $('input[name=weight]').val();
    $('#result').append("<p>" + max + "</p>");
  });
});

1 个答案:

答案 0 :(得分:2)

问题是.val()会返回一个字符串,而*运算符会隐式将字符串转换为数字(例如"5.0" * "5.0"25),{{1}运算符没有。最后的+不是将两个数字加在一起,而是将它们连接成字符串(例如+"5.0" + "5.0")。您将首先解析输入,然后将结果用作数字。

试试这个:

"5.05.0"

Demonstration