Jquery 数学:将文本输入的总数相加,然后找到百分比

Jquery 数学:将文本输入的总数相加,然后找到百分比,jquery,math,Jquery,Math,我有两种文本输入,正面和可疑。有多组输入,我需要在将输入的所有数字相加后显示总数。例:2正+2可疑=总数:4 然后,我需要从总数中找出阳性与可疑的百分比。 例:50%为阳性,50%为可疑 我想在用户输入时实时添加这些总数和百分比 到目前为止,我没有取得任何进展。有什么好办法吗?我应该使用模糊还是每个 jsfiddle: 以下是迄今为止我所拥有的,但它不起作用: <label>How many positive?</label> <input type="text"

我有两种文本输入,正面和可疑。有多组输入,我需要在将输入的所有数字相加后显示总数。例:2正+2可疑=总数:4

然后,我需要从总数中找出阳性与可疑的百分比。 例:50%为阳性,50%为可疑

我想在用户输入时实时添加这些总数和百分比

到目前为止,我没有取得任何进展。有什么好办法吗?我应该使用模糊还是每个

jsfiddle:

以下是迄今为止我所拥有的,但它不起作用:

<label>How many positive?</label>
<input type="text" name="positive" class="observationPositive">
<br />

<label>How many questionable?</label>
<input type="text" name="questionable" class="observationQuestionable">
<br />

<hr />

<label>How many positive?</label>
<input type="text" name="positive" class="observationPositive">
<br />

<label>How many questionable?</label>
<input type="text" name="questionable" class="observationQuestionable">
<br />

<hr />

<h4><span  id="observationTotal"></span> Total</h4>
<h4><span  id="observationQuestionablePercentage"></span>% Questionable</h4>
<h4><span  id="observationPositivePercentage"></span>% Positive</h4>

$('.observationPositive').blur(function () {
    var sum = 0;
    $('.observationPositive').each(function() {
        sum += Number($(this).val());
    });
});​​​​​​​​​
$('#observationTotal').text(sum);
有多少阳性?

有多少是可疑的?

有多少是阳性?
有多少是可疑的?

全部的 %可疑的 %肯定的 $('.observationPositive').blur(函数(){ var总和=0; $('.observationPositive')。每个(函数(){ sum+=数字($(this.val()); }); });​​​​​​​​​ $('observationTotal')。文本(总和);
假设您的意思是“值的平均值”。然而,我可以做的是更多地了解你想要实现的目标-你可能想要将每个积极的输入与一个有问题的输入配对

$('.observationPositive, .observationQuestionable').on("change", function () {
    var sumP = 0,
        sumQ = 0,
        countP = 0,
        countQ = 0;
    $('.observationPositive').each(function(){
        countP++;
        sumP += Number($(this).val());
    });
    $('.observationQuestionable').each(function(){
        countQ++;
        sumQ += Number($(this).val());
    });

    var percentP = 100/(1 + (sumQ/sumP));
    var percentQ = 100 - percentP;

    $("#observationTotal").text(sumP + sumQ);
    $("#observationQuestionablePercentage").text(percentQ.toFixed(2));
    $("#observationPositivePercentage").text(percentP.toFixed(2));
});

我建议您使用“.on”(“change”,function(){…})”而不是“.change(function(){…})”或“.blur(function(){…})”。我还建议您将HTML输入类型更改为“number”,可能会添加“step”、“min”和“max”属性,使表单更易于使用。是的,这很有效。现在,为了使数字四舍五入,我会用这个吗?数学四舍五入(num.toFixed)(2);我对我的答案进行了更新,因为数值已经存在,所以在输出它们时只需运行“.toFixed(2)”。如果您担心舍入问题,那么在计算percentQ时也可以使用“100-percentP.toFixed(2)”。