2010-12-03 39 views
0

我意识到有一个更简单的方法来看待这个问题。用Javascript简单添加所有字段

我将如何将表单中的所有字段或其他可尊敬的身体相加。有一系列文本字段包含一些动态加载的信息,但不要担心这些信息。

很简单的所有字段具有唯一的ID但在这种情况下'product_total_price_PRI_....'(由此...是唯一编号)相同的起始结构。

所以我对javascript的理解仍然是在反向工程方面,而不是构建数组和对象,那么如何将所有这些字段与onClick事件相加,例如。像onclick =“total();”

非常感谢,

回答

0

类似以下内容:

0
function summaFormae(form) { 
    var sum = 0; 
    for (var i = 0; i < form.elements.length; i++) 
    sum += parseFloat(form.elements[i].value); 
    return sum; 
} 
1

这样的事情可能工作...

如果你的意思是不知道的 “并称” 如果你”预计所有的数值和结果都会被添加,或者只是获取所有的结果并将它们添加到数组中......但是应该很容易修改它以添加数字数据。

HTML

<form> 
    <input id="product_total_price_PRI_asdfsdf" /><br /><br /> 
    <input id="product_total_price_PRI_sdfg" /><br /><br /> 
    <input id="product_total_price_PRI_fgh" /><br /><br /> 
    <input id="product_total_price_PRI_4356" /><br /><br /> 
    <input id="product_total_price_PRI_dfghfh" /><br /><br /> 
    <input type="button" value="submit" onClick="getFields()" /> 
</form> 

的JavaScript(更新先手的投入总和)Example of update

function getFields() { 
    var inputs = document.getElementsByTagName('input'), 
     result = 0; 
    for(var i = 0; i < inputs.length; i++) { 
     if(inputs[i].id.indexOf('product_total_price_PRI_') == 0) { 
      var num = parseFloat(inputs[i].value); 
      //if it's a valid number add it 
      if(!isNaN(num)) result += num; 
     } 
    } 
    alert(result); 
} 

工作示例JSFiddle

+0

非常好。这样做的目的是为了增加这个数目。所以我认为我们需要一个ParseFLoat在这里。我会把它放在哪里。总和应该加起来的价值,所以我已经剥离结果行结果+ = inputs [i] .value – 2010-12-04 15:52:44

相关问题