jquery文本字段的小计量

时间:2013-11-25 20:33:19

标签: jquery asp.net

我正在尝试编写一个jquery脚本来添加ID中包含“* Amount”的所有文本字段。我有以下内容,但无法弄清楚如何将它们全部加起来并将值分配给不同的文本框。

<input type="text" id="1stAmount">
<input type="text" id="2ndAmount">
<input type="text" id="3rdAmount">

// to get all the values of the textboxes that have Amount in the ID
$( "input[name*='Amount']" ).value();

3 个答案:

答案 0 :(得分:2)

您可以使用“[id * = Amount]”获取与Amount匹配的ID的所有输入。此外,.val()是检索输入值的方法。但是,这只会检索第一个匹配的值:

$('[id*=Amount]').val();  // will be the first input's value

要检索所有值,您必须遍历返回的集合中的每个元素,并将值相加:

var total = 0;
$('[id*=Amount]').each(function(element) {
  // get the value of the current element
  var text = $(this).val();
  // add the parsed total
  total += parseFloat(text );
});

// do something with total here
alert(total)

http://jsfiddle.net/2xpNa/

处的示例JsFiddle

答案 1 :(得分:0)

您无法使用[name*=Amount]获取包含ID的文本框,请使用[id*=Amount]

使用.each()

<强> JSFIDDLE DEMO

var ids = $('[id*=Amount]');
var count = 0;
$.each(ids,function(){
    count += parseFloat(this.value);
});
alert(count);

答案 2 :(得分:0)

试试这个:

    var values =  $( "input[name*='Amount']" ).value();
var sum = 0;
for (int i=0;i<values.length;i++){
sum += parseInt(values[i]);
}
$("#yourTextbox").val(sum);