繁体   English   中英

使用jQuery对几个文本输入中的值求和

[英]Using jQuery to sum values from a couple text inputs

我有几个文本输入,我想计算另一个输入中值的总和。 一旦用户在其中一个输入中输入值,就必须即时进行此操作。 我打算为此使用jQuery,并且我想为每个输入添加一个类名,例如class =“ input1”,class =“ input2”等。

我的问题是我不知道将所有这些值相加,并且鉴于我有50多个输入,我不想“手工添加”。

任何帮助都将受到赞赏。

如果您装饰所有要添加的输入以及input1input2等类,则将获得所有这些输入中当前值的总和

var sum = 0;

$("input[class *= 'input']").each(function(){
    sum += +$(this).val();
});

然后自然地,如果您想将此值放入id destination的输入中

$("#destination").val(sum);

这是一个小提琴

编辑

如果要在任何这些文本框发生更改时都运行此命令,则可以将其放在更改事件处理程序中

$(document).on("change", "input[class *= 'input']", function() {
    var sum = 0;

    $("input[class *= 'input']").each(function(){
        sum += +$(this).val();
    });

    $("#destination").val(sum);
});

这是小提琴

编辑

根据Jaspers的评论,如果您知道input1input2始终是您输入中的第一类,即您永远不会

<input class='someNewClass input1'

那你可以

$("input[class ^= 'input']").each(function(){

^=表示以开头,而*=表示包含任何位置。

给他们一个通用名称,您需要解析该值,因为最初它是文本

var result= 0;

$("input[name='sum']").each(function(){
    result = result + parseInt($(this).val(),10);
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM