2013-07-22 215 views
0

我想更新金額總和自動總和。總金額的更新金額

自動更新Sum Box中的總列數。

這將如何工作,這是我的代碼。

JS小提琴這裏:http://jsfiddle.net/anosim/6WX5Q/5/

這裏是HTML:

<table id="items"> 
    <thead> 
     <th>Unit</th> 
     <th>Qty</th> 
     <th>Total</th> 
    </thead> 
    <tbody> 
     <tr> 
      <td><input class="input3 unit" name="unit_1" type="text" value=""></td> 
      <td><input class="input3 qty" name="qty_1" type="text" value=""></td> 
      <td><input class="input3 total" name="total_1" type="text" value=""></td> 
     </tr> 
     <tr> 
      <td><input class="input3 unit" name="unit_1" type="text" value="" autocomplete="off"></td> 
      <td><input class="input3 qty" name="qty_1" type="text" value="" autocomplete="off"></td> 
      <td><input class="input3 total" name="total_1" type="text" value="" autocomplete="off"></td> 
     </tr> 
    </tbody> 
</table> 

<br clear="both"> 

<table id="items"> 
    <thead> 
     <th>Sum</th> 
    </thead> 
    <tbody> 
     <tr> 
      <td><input class="input3 sum" name="sum" type="text" value="" autocomplete="off"></td> 
     </tr> 
    </tbody> 
</table> 

這裏是jQuery的:

$('.qty').keyup(function(e) { 
    var val1 = parseInt($(this).val()); 
    var val2 = parseInt($(this).parent().siblings('td').find('.unit').val()); 
    var total = val1 * val2; 
    if(isNaN(total)) { 
     var total = 0; 
    } 
    $(this).parent().siblings('td').find('.total').val(total); 

    // get sum 
    $('.sum').val(total); 
}); 
+0

會很好,當單位量變化以及火災的最新情況。 $('。qty,.unit')。keyup(function(e)...' – nubinub

回答

0

像這樣將工作:

var sum=0; 
$('.total').each(function(index){sum+=(parseFloat($(this).val()) || 0); }) ; 
// get total amount 
$('.sum').val(sum); 

jsfiddle here.

0

您需要添加一些邏輯,以保持總運行。這裏是一個分叉撥弄解決方案:

http://jsfiddle.net/pAQxc/

var runningTotal = 0; 
    $('.total').each(function(){ 
     var tempVal = parseInt($(this).val()); 

     if(isNaN(tempVal)) { 
      tempVal = 0; 
     } 
     runningTotal = runningTotal + parseInt(tempVal); 
    }); 

    // get sum 
    $('.sum').val(runningTotal);