Ajax表结果不计算每行价格列的总和

时间:2018-02-08 07:54:00

标签: javascript ajax datatable

screenshot of sale page

大家好。我有一个销售页面和另一个根据ajax帖子显示结果的页面。我不知道你是否能看到这张照片,但让我稍后解释一下。 页面左侧显示所选产品的列表,根据右侧的产品列表与ajax帖子一起使用。我点击右侧产品按钮,AJAX结果将产品带到左侧列表中,其中包含产品名称,数量和产品价格。一切正常,直到这一步。 问题是,当我选择产品并进入销售清单时,我需要计算此表的价格列的总和,并在此表的另一个div-span中显示。当我添加新产品时,我需要现场直播。现在它只显示产品列表中第一行的总和结果。不算全部。  这是总和的脚本:

<script>
var $form = $('#satis_bitir'),
$sumDisplay = $('#ara_toplam');

$form.on('keyup', 'input', function ()
{
var $summands = $form.find('#toplam_tutar');
var sum = 0;
$summands.each(function ()
{
    var value = Number($(this).val());
    if (!isNaN(value)) sum += value;
});

$sumDisplay.val(sum.toFixed(2)); 
});
</script> 

那么如何计算整个列表的价格列并显示另一个div-&gt; span?

2 个答案:

答案 0 :(得分:0)

而不是使用

#toplam_tutar

尝试使用

.toplam_tutar

元素ID是唯一的意味着只选择第一个div

答案 1 :(得分:0)

var updateCartAmount = function(){
    var $form = $('#satis_bitir'),
    $sumDisplay = $('#ara_toplam');

    var $summands = $form.find('.toplam_tutar');
    var sum = 0;
    $summands.each(function ()
    {
      var value = Number($(this).val());
      if (!isNaN(value)) sum += value;
    });
    $sumDisplay.val(sum.toFixed(2)); 
};


$.ajax({
  type: 'GET',
  url: 'your-url',
  data: {},
  success: function(){
      updateCartAmount(); //call your updateCartAmount here when ajax done
  }
});